11智能在线
新记
C语言中scanf函数以%s和%d格式进行输入时,输入的空格和Enter残留在缓冲区中吗?
有的说是残留在缓冲区中,有的说没有。我想知道到底有没有? 还请各位高手解答,并解释一下调用scanf函数的具体过程。 高分求解答,看清要求再作答。
举报该文章
相关建议 2011-10-23
%s格式读入字符串时,只有接收到\n时(假设字符数组空间不收限制的话),才停止如入,因此以%s,%d读入一个字符串和一个整数时,一般不会得到预期的结果,这是因为逗号“,”被当作字符串的一部分,所以整数必被接受为字符串。解决的办法是,用两个scanf()函数分别读入字符串和整数。
温馨提示:内容为网友见解,仅供参考
当前网址:
https://11.t2y.org/zz/88888f2mq.html
其他看法
第1个回答 2011-11-05
%s格式读入字符串时,只有接收到\n时(假设字符数组空间不收限制的话),才停止如入,因此以%s,%d读入一个字符串和一个整数时,一般不会得到预期的结果,这是因为逗号“,”被当作字符串的一部分,所以整数必被接受为字符串。解决的办法是,用两个scanf()函数分别读入字符串和整数。
相似回答
大家正在搜
相关问题
题目是 有两个学生,他们的数据包括学号,姓名,3门课的成绩,...
c语言中,scanf("%d,%d",&a,&b);中的逗号...
C语言scanf函数输入时键盘缓冲区\n的问题
c语言中,scanf函数中用%d,运行时输入数值时要用空格隔...
C语言中用scanf函数输入字符时,为什么要在输入控制符%c...
scanf("%d%d",&a,&b)与scanf("%d,...
c语言中的scanf 函数的用法
C语言中scanf()与gets()函数的区别,哪一个可以读...