C语言怎么用scanf输入字符串。

发布网友 发布时间:2022-03-07 22:02

我来回答

3个回答

热心网友 时间:2022-03-07 23:32

你的意思是输入多余的字符吧?
1、因为你用scanf输入的字符都是输入到缓冲区中的,例如你定义了一个只接受一个字符的变量ch,但却输入了多余的字符,这种情况会给编译器造成困扰,因为他并不完全智能,通常采用这种方法释放掉缓冲区内多余的字符输入;例如:
2、char ch;
scanf("%c", &ch);//假如你不小心输入了多个字符
//解决方法如下
while (‘\n’ != getchar())
{continue;}//这里的原理一不断的用getchar读取缓冲区内的字符,并将其废弃掉,直到遇到你输入的回车符(当然也可以是别的输入结束符);追问不能用scanf("%s",ch)这样对ch赋值么?

热心网友 时间:2022-03-08 00:50

字符串用数组代替,然后用循环语句一个一个字母输进去= =

热心网友 时间:2022-03-08 02:24

付费内容限时免费查看回答可以

在C语言中,可以使用“scanf(“格式控制字符串”,变量内存地址)”语句输入字符串。scanf()函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。

给您举个例子

想在scanf函数中输入字符串,必须定义一个字符数组用于存储字符串,同时转换说明必须使用%s,而不是%c,下面请看详细的教程。

1. 首先定义一个字符数组,名为say。

2. 然后给出提示让用户输入内容。

3. 使用scanf函数存储用户输入的内容,注意如果变量是字符数组的话,则不需要在前面加上&符号,代码如下:

scanf("%s",say);

4. 最后用printf函数将结果打印出来。

5. 右键单击,在弹出的菜单中点击“run code”。

6. 查看运行结果。

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com