C语言,China翻译为Glmre,在线等!

我的意思是这样的,在键盘上输入任意的五个字母,将翻译成与之对应的后第4个字母,例“A”后面第四个字母为“E”。程序是这样的:#include<stdio.h>void main(){char c1,c2,c3,c4,c5; scanf("%c,%c,%c,%c,%c尀n",&c1,&c2,&c3,&c4,&c5); c1+=4;c2+=4;c3+=4;c4+=4;c5+=4; printf("%c,%c,%c,%c,%c尀n",c1,c2,c3,c4,c5); }这是我写的,但是不对,输出一直不对应,是哪里出问题了啊
2026年09月25日 20:01
有4个网友回答
网友(1):

#include
void main()
{
char c1,c2,c3,c4,c5;
scanf("%c %c %c %c %c",&c1,&c2,&c3,&c4,&c5);
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
printf("%c,%c,%c,%c,%c\n",c1,c2,c3,c4,c5);
}
因为你这个scanf里面加了逗号所以输入时也要加逗号 比方:a,b,c,d,e
而且把scanf中\n去掉

网友(2):

就像 楼上说的
scanf 输入格式要注意
按你说的
应该
scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5);
你再试试。不行你就用getchar()来获取。
C1 = getchar();再试试看。

网友(3):

scanf("%c,%c,%c,%c,%c\n",&c1,&c2,&c3,&c4,&c5);
“\n”去掉,输入一个字母后要加“,”号
还有啊,输入XYZxyz这些要怎么办啊?题目有漏洞

网友(4):

/*
请输入字符串 : aasXDFhj12mko
eewBHJln12qos
请按任意键继续. . .
*/
#include

int main() {
char s[81],*p;
printf("请输入字符串 : ");
gets(s);
for(p = s; *p; ++p) {
if(*p >= 'a' && *p <= 'z')
*p = ((*p - 'a') + 4) % 26 + 'a' ;
if(*p >= 'A' && *p <= 'Z')
*p = ((*p - 'A') + 4) % 26 + 'A' ;
}
printf("%s\n",s);
return 0;
}