C语言编程中为什么scanf()里面格式串中不同类型用逗号隔开,输入56789012345a72,只显示56,后面的错
答案:2 悬赏:0
解决时间 2021-11-24 16:11
- 提问者网友:他是我的あ男人
- 2021-11-24 08:48
#include
int main(void)
{
int i,j;
float x,y;
char c;
scanf("%2d %f %f %c %d",&i,&x,&y,&c,&j);
printf("i=%d,x=%f,y=%f,c=%c,j=%d",i,x,y,c,j);
return i,x,y,c,j;
}
输入56789 012345a72,scanf()里面逗号换成空格就能显示对的结果:
56,789.000000,12345.000000,a,72
想问问大神,为什么逗号换成空格就对了?可是逗号分隔也没错啊?
最佳答案
- 二级知识专家网友:陪伴是最长情的告白
- 2021-11-24 10:22
你的输入必须和你的scanf中的格式参数保持一致,你现在的scanf的"%2d %f %f %c %d"是中间用空格隔开的,当然输入必须这样子了啊。否则格式对不上,你让计算机怎么扫描呢。
如果你想输入时用逗号隔开,你就把"%2d %f %f %c %d"改成"%2d,%f,%f,%c,%d",就行了。
全部回答
- 1楼网友:有钳、任性
- 2021-11-24 11:38
你好!
输入只有换行科空格才可以
仅代表个人观点,不喜勿喷,谢谢。
我要举报
大家都在看
推荐资讯