C语言,函数执行先后顺序

发布网友

我来回答

4个回答

热心网友

其实是printf("等于");

先执行的,然后再执行的scanf("%d", &c);

只不过scanf的时候并不是从屏幕上scanf的,而是从缓冲区scanf的

你的5其实在printf之前先进入了缓冲区,然后再printf等于,然后再从缓冲区scanf那个5


如果要想得到你那个效果的输入输出,可以试试下面的代码

#include <stdio.h>

void main()
{
int b, c, f;
char a;
scanf("%d %c", &b, &a);
printf("%d%c", b, a);
if (a == '-')
{

printf("等于");
scanf("%d", &c);
f = b - c;

printf("%d %d", c, f);
}
}

热心网友

朋友你好,scanf语句遇到特定的字符才会停止输入,你输入完25-5敲击回车才会停止输入,执行其他语句。

热心网友

我试了试,首先你敲“25-”然后回车,会出现“等于”然后输个数字,回车后,会出现得数

热心网友

scanf("%d%c",&b,&a); 改成scanf("%d%c%d",&b,&a,&c); 删除.scanf("%d",&c);追问

我改过了,结果是这样的。

追答额。。scanf是已回车作为输入完成的信号的。你可以去查询下看能不能scanf不换行。

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