谁帮我看看这是个什么程序。谢谢咯

来源:百度知道 编辑:UC知道 时间:2024/04/29 00:03:59
#include<stdio.h>
main()
{char ch,c1,c2;
printf("Enter a character:");
ch=getchar();
if((ch>='a')||(ch<='z'))
ch-=32;
c1=ch-1;
c2=ch+1;
if(ch='A')
c1=ch+25;
else if(ch='Z')
c2=ch-25;
putchar(c1);
putchar(ch);
putchar(c2);
putchar('\n');
}

是个输出ASCII码相邻的三个字符的程序。但当遇到小写字母时,变成大写字母再输出相邻的三个字母的程序。

但是里边的等于号(==)都输成了赋值运算符(=),所以函数功能被迫回,就会输出ZAB

应该是下面这样:

#include<stdio.h>
main()
{char ch,c1,c2;
printf("Enter a character:");
ch=getchar();
if((ch>='a')||(ch<='z'))//如果是小写字母
ch-=32;//变成大写字母
c1=ch-1;//ASCII码小一的字符
c2=ch+1;//ASCII码大一的字符
if(ch=='A')//如果是“A”就变成“Z”
c1=ch+25;
else if(ch=='Z')//如果是“Z”就变成“A”
c2=ch-25;
putchar(c1);//依次输出三个字符
putchar(ch);
putchar(c2);
putchar('\n');
}