
初学C的一个小问题。。。。
#include<stdio.h>intmain(void){intk;charc;scanf("%d",&k);scanf("%c",&c);printf("k=%d,...
#include <stdio.h>
int main(void)
{
int k;
char c;
scanf("%d", &k);
scanf("%c", &c);
printf("k = %d, c = %c\n", k, c);
return 0;
}
这程序的
scanf("%d", &k);
scanf("%c", &c);
这2句, 只执行了这句 scanf("%d", &k);
代码就结束了。
但是,如果把顺序这样调过来,如 :
scanf("%c", &c);
scanf("%d", &k);
这样的话,2句都能执行,为什么啊??
3Q! 展开
int main(void)
{
int k;
char c;
scanf("%d", &k);
scanf("%c", &c);
printf("k = %d, c = %c\n", k, c);
return 0;
}
这程序的
scanf("%d", &k);
scanf("%c", &c);
这2句, 只执行了这句 scanf("%d", &k);
代码就结束了。
但是,如果把顺序这样调过来,如 :
scanf("%c", &c);
scanf("%d", &k);
这样的话,2句都能执行,为什么啊??
3Q! 展开
1个回答
展开全部
你是怎么输入的?
估计你是在整数后面又输入了空格,而空格被c读取了,因为空格也是一个'char'。
估计你是在整数后面又输入了空格,而空格被c读取了,因为空格也是一个'char'。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询