#include<stdio.h> main() { char c1,c2; scanf("%4c%5c",&c1,&c2); printf("c1=%c,c2=%c",c1,c2); }

要求,从键盘输入字符'A'给c1,输入字符'B'给c2。
这样输入AjjjBjjjj(其中j代表空格),为何得不到正确的结果。

肯定不是正确结果了! scanf()这个函数在%c控制下只能输入一个字符,用%5c这种写法是不正确的,你写了虽然不报错,但不会接收4或5个字符。实践证明,这个函数在接收单个字符时表现实在不随人意,有很多难以掌握的细节……
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-04
%4c%5c里的4和5是字符数 而不是空格数 其实不用4和5

...#include<stdio.h> main() { char c1,c2; scanf("%c",&c1); c2=...
首先你输的6就送给了C1,然后执行while循环语句,字符6的ASCII码是054,很明显 C1<65成立,继续执行while里面的语句,而此时又输了个‘5’,C1被重新赋值,它现在是5了!!而字符'5'依然符合 C1<65,再次循环执行 scanf("%c",&c1)...直到输入一个字符不满足条件(c1<65||c1>90),循环才会...

C语言如何键入特定英文字母然后输出特定数字?
include <stdio.h> int main(){ \/\/输入字母,再输出字母的方法 printf("输入字母,再输出字母的方法\\n"); char c1,c2; scanf("%c,%c",&c1,&c2); printf("c1 = %c,c2 = %c",c1,c2); \/\/输入数字,转换成字母的方法 printf("\\n\\n输入数字,转换成字母的...

#include<stdio.h> main() {char c1,c2,c3,c4,c5,c6; scanf("%c%c%c...
123回车分别是C1 C2 C3 C4的字符 C5 C6就取4和5 最后输出

scanf(“%4c”,&c1);scanf("%4c",&c2);scanf("%4c",&c3); 怎么输入...
include <stdio.h> int main(){ char c1,c2,c3;scanf("%c",&c1);scanf("%c",&c2);scanf("%c",&c3);printf("***%4c***%4c***%4c***",c1,c2,c3);return 0;} 输出时看星花间隔就可以了

请编程序将China译成密码,C高手来看一下
从键盘上任意输入5个字符,用原来字母后面第4个字母代替原来的字母。要考虑如超过“Z”和"z",则环绕至“A”和“a"后。include<stdio.h> int main(){ char c1,c2,c3,c4,c5;scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5);if((c1+4>'z')||((c1+4>'Z')&&(c1<96)))c1=c1...

#include <stdio.h> main( ) { char c; scanf(
include <stdio.h> main( ){ char c;scanf("%3c",&c);\/\/输入c字符,但之前要补两位空格 %3c表示这个字符要占三个字符位 printf("c=%c\\n",c)\/\/输出c=“你输入的c值,%c代表输出为字符,如你输入65,则输出不是65,而是对应的ASCII表中的字符A”} ...

...#include <stdio.h> main() { int a1,a2; char c1,c2; scanf("%d%...
A。因为scanf第一个参数是%d,所以开始扫描输入中的数字,并且停在第一个不是数字的字符上。第二个参数是%c,所以扫描一个字符。在答案A里,这个字符是a;答案B里是空格;答案C里是逗号;答案D里也是空格。所以只有A是正确的

#include<stdio.h>
scanf语句后面没有加分号 printf语句里面双引号后没加逗号 include<stdio.h> int main(void){ int a1,a2;char c1,c2;scanf ("%d %c %d %c", &a1, &c1, &a2, &c2);printf ("%d,%c,%d,%c\\n", a1, c1, a2, c2);return 0;} ...

怎样用C++写出 输入一个大写字母。输出时变成小写
C语言的编写如下:include <stdio.h> include <stdlib.h> void main (){ char c1,c2; \/\/ 定义两个字符c1,c2 printf("请输入大写字母的值!\\n"); \/\/输出你输入的那个大写字母以及它的ASCII c1=getchar( ); \/\/从键盘输入一个大写字母,放在c1 c2=c1+32; \/\/将大写的转换成小写...

...读入两字符送给变量c1 c2,分别用putchar、printf函数输出两个字符...
include<stdio.h> int main(){char c1,c2;c1=getchar();putchar(c1);scanf("%c",&c2);printf("%c\\n",c2);return 0;} 我们平时从键盘输入的字符都会存到缓存区里面,包括回车字符,getchar是从缓存区读入一个字符,用法是ch=getchar();scanf并不针对于单个的字符处理,还可以读入数据和...

相似回答