首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

scanf格式有关问题

2012-04-03 
scanf格式问题输入一下代码后:#include stdio.hint main(){int i,j,kscanf(%d \n%d \n%d \n,&i,&j,&k

scanf格式问题
输入一下代码后:
#include <stdio.h>
int main()
{
int i,j,k;
scanf("%d \n%d \n%d \n",&i,&j,&k);
printf("%d \n%d \n%d \n",i,j,k);
return 0;
}

运行,输入


3
没反应,再输一个4
它才能输出
1
2
3
这是怎么回事???

[解决办法]
scanf("%d \n%d \n%d",&i,&j,&k);
[解决办法]
scanf 里不要换行符啊 呵呵 ……去掉看看 就是把\n去掉
[解决办法]
scanf("%d \n%d \n%d \n",&i,&j,&k);
-->
scanf("%d \n%d \n%d",&i,&j,&k);
[解决办法]
楼主可以参看一下:
http://topic.csdn.net/u/20100413/22/e1f309ba-437c-4375-9eb6-b1be52da6429.html
[解决办法]

C/C++ code
#include <stdio.h>int main(){int i,j,k;scanf("%d %d %d ",&i,&j,&k);//把换行符去掉printf("%d \n%d \n%d \n",i,j,k);return 0;}
[解决办法]
探讨
scanf("%d \n%d \n%d \n",&amp;i,&amp;j,&amp;k);
-->
scanf("%d \n%d \n%d",&amp;i,&amp;j,&amp;k);

[解决办法]
不是有特别需要的话,不要在scanf的格式控制符里加任何其他字符

直接用"%d%d%d"是一个好的习惯。
[解决办法]
scanf("%d \n%d \n%d \n",&i,&j,&k);
-->
scanf("%d \n%d \n%d",&i,&j,&k);
[解决办法]
scanf里最好别加‘\n’,printf里面可以加
[解决办法]
恩,把你scanf();里面的\n去掉,
[解决办法]
enter是/r/n,就是回车+换行,写入内存中后回车和换行符转换成一个换行符。
[解决办法]
#include <stdio.h>
int main()
{
int i,j,k;
scanf("%d \n%d \n%d",&i,&j,&k);//scanf(" ")后面一个%d和"之间不要有空格或\n//
printf("%d \n%d \n%d \n",i,j,k);
return 0;
}

我这个可以得到你想要的结果了,


参考这个贴的3楼http://topic.csdn.net/u/20100413/11/2af634c7-cf8e-43a5-aa75-259abfd76296.html
[解决办法]
scanf里面的格式控制串中不能有任何转义字符
[解决办法]
scanf中不能带\n,因为最后你输入后又回按回车。scanf不读取\n
[解决办法]
int scanf(const char *format, ...)

It returns when format is exhausted
[解决办法]
改为
scanf("%d \n%d \n%d",&i,&j,&k);
或者
scanf("%d%d%d",&i,&j,&k);
[解决办法]
去掉scanf中的\n,更多精彩教程(c++/c、java),参见www.caravelsoft.com
[解决办法]
#include <stdio.h>
int main()
{
int i,j,k;
scanf("%d %d %d ",&i,&j,&k);//把换行符去掉


printf("%d \n%d \n%d \n",i,j,k);
return 0;
}

正解
[解决办法]
scanf()中不用换行符,去掉 \n 就行了
[解决办法]
因为最后的一个\n没有scanf吃了,所以你还得输一个。最好不要在scanf中加\n
[解决办法]
楼主的问题真有意思啊!!!!!!!!!!

热点排行