.急求一道c语言编程题!!!
用条件编译方法实现以下功能:输入一行电报文字,可以任选两种输出,一为原文输出;一为将字母变成其下一字母(如’a’变成’b’……….’z’变成’a’。其他字符不变)。用#d...
用条件编译方法实现以下功能:输入一行电报文字,可以任选两种输出,一为原文输出;一为将字母变成其下一字母(如’a’变成’b’……….’z’变成’a’。其他字符不变)。用#define命令来控制是否要译成密码。例如:#define change 1 ,则输出密码。若#define change 0,则不译成密码,按原码输出。
俺没分加了,--! 展开
俺没分加了,--! 展开
若以下回答无法解决问题,邀请你更新回答
1个回答
2008-06-19
展开全部
//---------------------------------------------------------------------------
#include <stdio.h>
#include <ctype.h>
#define change 0
int main(void)
{
char str[80];/*字符串长度最大为80(包括结束字符)*/
int i;
scanf("%79[^\n]",str);/*输入最多79个字符,用回车结尾*/
#if (change)
for (i = 0; str[i]; i++)
if (isalpha(str[i]))
if (str[i]=='z') putchar('a');
else if (str[i]=='Z') putchar('A');
else putchar(str[i]+1);
else putchar(str[i]);
#else
printf("%s\n",str);
#endif
return 0;
}
//---------------------------------------------------------------------------
#include <stdio.h>
#include <ctype.h>
#define change 0
int main(void)
{
char str[80];/*字符串长度最大为80(包括结束字符)*/
int i;
scanf("%79[^\n]",str);/*输入最多79个字符,用回车结尾*/
#if (change)
for (i = 0; str[i]; i++)
if (isalpha(str[i]))
if (str[i]=='z') putchar('a');
else if (str[i]=='Z') putchar('A');
else putchar(str[i]+1);
else putchar(str[i]);
#else
printf("%s\n",str);
#endif
return 0;
}
//---------------------------------------------------------------------------
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询