#include<stdio.h>
int main(void)
{
char ch;
scanf("%c",&ch);
while(ch!='g'){
printf("%c",ch);
scanf("%c",&ch);}
return 0;
} 运行后输入:Go west,young man!
输出:Go west,youn
char字符容量不是一个字符吗? ch是一个非数组变量为什么能输出字符串?
根据顺序编译,应该每判断一次 ch!='g',请求输入一次,为什么整个过程都不请求输入?
求知中!请务必每个问题都解释下!谢谢!!
嗯!也就是说循环里的那个 scanf("%c",&ch);使缓存的剩余的字符输出来了!!?
追答scanf优先看文件缓冲区是否有可用的字符,如果有的话会直接给到参数的,如果没有就提示你输入。
循环里面的scanf把缓冲区的内容一个一个给到了ch,输入是由printf执行的。
如果下面没那个循环的话 那是不是说只能显示第一个字符?
追答嗯,就是这样:scanf("%c",&ch);中的控制字符%c决定它每次只能从缓冲区内读取一个!
追问在循环中应该是显示一个字符 然后接下然又有一个提示输入把!!怎么没有?循环中的那个scanf("%c",&ch);也从缓存读取吗?
追答这个它先检查缓冲区有没有可用字符,没有的话才会让你输入的!
下面这个你试一下,就可以理解了!
#include
int main(void)
{
char ch;
scanf("%c",&ch);
while(ch!='g'){
fflush(stdin);//如果给出的文件流是一个输出流,那么fflush()把输出到缓冲区的内容写入文件. 如果给出的文件流是输入类型的,那么fflush()会清除输入缓冲区.
printf("%c",ch);
scanf("%c",&ch);}
return 0;
}
在C语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中输入并打印字符串的编程方法如下:定义一个存放字符串的数组空间,比如为字符串分配100个数组空间。使用gets()函数获取键盘输入的字符串,输入格式为gets(定义的字符数组名)。使用puts()函数输出之前输入的字符串,输出格式为puts(定义的字符数组名)。运行程序后,成功实现输入字符串并原样在屏...
在C语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中实现用键盘输入字符串并打印的方法步骤如下:首先,需定义一个数组空间用于存放字符串,例如分配100个数组单元。接着,使用gets()函数读取键盘输入的字符串,调用格式为gets(字符数组名)。然后,应用puts()函数输出之前读取的字符串内容,使用方法为puts(字符数组名)。最后,运行程序,即可成功实...
在C语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中输入字符串后然后打印出来的编程方法如下:1. 首先需要先定义一个存放字符串的数组空间,如给字符串100个数组空间。2.接着使用gets()函数来获取键盘输入的字符串。一般格式为gets(定义的字符数组名)。3.然后再使用puts()函数来输出之前输入的字符串内容。一般格式puts(定义的字符数组名)。4...
C语言字符和字符串的输入与输出
输入:`i am working`输出:`i am working`此外,C语言还提供了gets和puts函数进行字符串的输入与输出。使用gets函数读取字符串时,输入以回车结束,并自动添加终止符`'\\0'`。而puts函数用于输出字符串,输出后自动换行。示例代码如下:include <stdio.h> int main() { char str[20];printf("请...
c语言中怎么输出字符串?
1、首先我们新建一个dev C++的项目。2、接下来在项目中新建C语言程序文件。3、然后在C语言文件中声明一个字节数组。4、接下来我们通过printf函数提示用户输入字符串,通过scanf接收用户输入的字符串。5、接着在通过printf函数输出用户输入的内容。6、最后运行C语言程序,我们输入内容以后就可以输出了。在C...
如何用一个C语言实现字符串输入输出?
1,输入部分 只有一个输入内容是一个字符串,因此定义一个局部变量char 数组,scanf直接读入输入的字符串。2,字符串处理 a,使用同一个字符串保存输出内容 b,定义另一个char数组保存输出的内容 3,算法 循环字符串的每一个字符:判断是否是小写字母 ( ch >= 'a' && ch <='z')true: ch -=...
c语言字符串数组怎么输入和输出呢
在C语言中,有两个函数可以在控制台(显示器)上输出字符串,它们分别是:puts():输出字符串并自动换行,该函数只能输出字符串。printf():通过格式控制符%s输出字符串,不能自动换行。除了字符串,printf() 还能输出其他类型的数据。这两个函数相信大家已经非常熟悉了,这里不妨再演示一下,请看下面的...
在C语言中如何实现用键盘输入一个字符串,并打印出来?
在C语言中实现用键盘输入一个字符串,并打印出来的解决方法如下:1、首先定义一个字符串数组,如你可以给字符串100个数组空间。如图括号内数字即为你定义的数组大小。2、gets()函数用来获取键盘输入的字符串,括号内的s即为字符串变量。3、接着用puts()函数输出之前我们从键盘读取的字符串。括号内为...
c语言中关于字符的输入输出问题。 我想知道输入scanf(%c,a[i...
putchar 函数是字符输出函数, 其功能是在显示器上输出单个字符。getchar函数的功能是从键盘上输入一个字符。 函数只能接受单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。printf 函数称为格式输出函数.一般形式为:printf(“格式控制字符串”,输出表列)scanf 函数在本质上也是...
C语言上中怎么样直接输入输出一个字符串
C语言中字符串的输入和输出主要有两种方式:输入使用:scanf("%s",a);对应的输出使用:printf("%s\\n",a);输入使用:gets(b);对应的输出使用:puts(b);字符串或串(String)是由数字、字母、下划线组成的一串字符。一般记为 s="a1a2···an"(n>=0)。它是编程语言中表示文本的数据类型。在...