c语言使用条件编译方法编写一程序,其功能要求是,输入一行电报文字,可以任选两种输出:一为原文输出;二为变换字母的大小写(如小写a变成大写A,大写D变成小写d),其他字符不变,用#define命令控制是否变换字母的大小写。例如,#define CHANGE1,则输出变换后的文字,若#define CHANGE 0,则原文输出。
#include <stdio.h>
#define CHANGE 1 // 可以修改为0以输出原文
int main() {
char input[1000], output[1000];
int i = 0;
printf("请输入一行电报文字:\n");
fgets(input, 1000, stdin); // 从标准输入读取一行文字
// 判断是否需要变换大小写
if (CHANGE) {
while (input[i] != '\0') {
if (input[i] >= 'a' && input[i] <= 'z') {
output[i] = input[i] - 'a' + 'A';
} else if (input[i] >= 'A' && input[i] <= 'Z') {
output[i] = input[i] - 'A' + 'a';
} else {
output[i] = input[i];
}
i++;
}
output[i] = '\0'; // 结尾增加一个空字符,以表示字符串的结束
} else {
strcpy(output, input); // 直接复制输入
}
printf("输出结果为:\n%s", output); // 输出结果
return 0;
}