ch=getchar(); putchar(ch);和putchar(getchar())的区别。

#include <stdio.h>
main()
{
char ch;
printf("Input Two character:");
ch=getchar();
putchar(ch);
putchar('\n');
putchar(getchar());
putchar('\n');
}
我输入ab 输出是
a
b
我把putchar(getchar())改成ch=getchar()输出就是
a
a
我如果在原程序后面再加个putchar(getchar()) 输入abc
输出是
a
b
c
第二个函数具体是什么意思?
还有想问下printf()
()里面不是包括“格式控制字符串”,输出列表么
为什么可以用printf("input two character")
input two character是不是非格式字符串? 输出列表可以省?

第1个回答  2011-12-06
getchar()是输入一个字符 你输入两个了
第2个回答  2020-05-10
如果输入abc,结果只能是a,因为putchar只能输出一个字符
第3个回答  2020-12-21

看到这么多复杂性的回答,简直是脑壳疼。

putchar输出一个字符,getchar是输入一个字符。

以下是楼主的源码:

这是按楼主的意思把

putchar(getchar())改成ch=getchar()改动后的源码:

改动后的源码打印结果:

我都不知道楼主的这个aa是怎么给显示出来的,后面的问题没有任何意义。