问一个超简单的程序问题

来源:百度知道 编辑:UC知道 时间:2024/05/05 10:30:18
#include<stdio.h>
void main()
{
char ch,c1,c2;
printf("Enter a character:");
ch=getchar();
if((ch>='a')||(ch<='z'))
{
ch-=32;
c1=ch-1;
c2=ch+1;
putchar(c1);
putchar(ch);
putchar(c2);
}
if((ch='A')|(ch='Z'))
c1=ch+25;
c2=ch-25;
putchar(c1);
putchar(ch);
putchar(c2);
putchar('\n');
}
输出的内容是三个字母的,可是为什么我有六个?

没什么问题啊,除了几个小问题,可能是你书写时出现的吧。能通过编译

你要问这段程序干嘛了?
就是让用户输入一个字母,就会输出这个字母前面的那个字母,这个字母本身以及这个字母的后面那个字母。。。。

如果你输入的字母是第一个a或者最后一个z,那么有可能会输出别的什么符号。。

输出字母的大小写跟你输入的一致

第二个if前面应该加个else
else if(...)
这样看看

我看懂了。如果输入的是小写字,则母转换成大写字母输出,并输出变成大写字母以后的前一个和后一字母。比如:输入d,则输出C D E;如果输入的是大写字母类似......你一下AS码表就知道了。