c语言中getchar和scanf以及putchar和printf的区别!

我是新手,刚编写两个简单程序,要求输出girl并原样输出!
程序1:(getchar和putchar实现,已经解决)
#include<stdio.h>
main()
{
char a,b,c,d;
a=getchar();b=getchar();c=getchar();d=getchar;
putchar(a);putchar(b);putchar(c);putchar(d);
}
程序2:#include<stdio.h>
main()
{ char a,b,c,d,;
scanf("%c,%c,%c,%c",&a,&b,&c,&d);
printf("%c,%c,%c,%c",a,b,c,d);
}
好象第二个编译通过了,但是就是输入girl乱码啊 ,高手解答咯!1

【getchar】:从标准输入里读取下一个字符。返回类型为int型,返回值为用户输入的ASCⅡ码,出错返回-1。
【scanf】:接收从键盘输入的多个字符,并保存在对应地址的变量中。变量可以指定不同的类型。
【putchar】:向终端输出一个字符。其格式为putchar(c),其中c可以是被单引号(英文状态下)引起来的一个字符,可以是介于0~127之间的一个十进制整型数(包含0和127),也可以是事先用char定义好的一个字符型变量。例如:“putchar('#')”输出字符“#”。
【printf】:格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。printf()函数的调用格式为: printf("", )。一般是向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。要输出的的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-10-29
getchar(字符输入函数),它的作用只是从终端输入一个字符,没有参数,函数的值就是从输入设备中得到的字符;puhchar()同理,也只能向终端输出一个字符;
如:
#include <stdio.h>
main()
{
char c;
c=getchar();
putchar(c);}
运行结果:
a 回车
a
scanf()和prinf()是格式输入/输出函数,其参数是可变的,可以连续输入,连续输出;这两个函数在C语言中用的很多,就不多说了
第2个回答  2015-05-16
getchar和putchar是针对char数组的,可以一起输入输出而printf scanf是针对单个的,int或者char的输入和输出
第3个回答  推荐于2017-10-01
main()
{ char a,b,c,d,;
scanf("%c %c %c %c",&a,&b,&c,&d);//把逗号改成空格就可以了
printf("%c,%c,%c,%c",a,b,c,d);
}本回答被提问者采纳
相似回答