getchar和scanf的区别
的有关信息介绍如下:scanf可以一次按照设定的输入格式输入多个变量数据.如int d,float f,char str[20],scanf("%d%f%s",d,f,str);例: 使用 scanf 输入 42scanf()中使用%c说明符,该函数将只读取字符4 并将其存储在一个char类型的变量中如果使用%s说明符,该函数会读取两个字符,即字符4和字符2,并将它们存储在一个字符串中。如果使用%d说明符,则scanf 读取同样的两个字符,但是随后它会继续计算与它们的相应的整数值为4*10+2 得到 42;然后将该整数的二进制表示保存在一个int变量中,如果使用%f说明符 则scanf()读取这两个字符 计算它们对应的数值 42,然后以内部的浮点表述该值,并将结果保存在一个float变量中简而言之 输入由字符组成,scanf可以将输入装换成整数或浮点值。使用%d或%f这样的说明符能限制可接受的输入的字符类型,但是getchar()和使用%c的scanf()接受同样的任何字符;getchar()只能输入字符型,输入时遇到回车键才从缓冲区依次提取字符.如char ch;ch=getchar();输入abc\r(回车)ch=a;用在循环时也要等有回车键时才接收.char ch;while((ch=getchar())!='q'){printf("%c ",ch);这样你可以输入很多字符后再按回车.不用一个个按回输出,还是全部一起输出到屏幕