#include<stdio.h>
#include<conio.h>
int main()
{
clrscr();
int a,b,c;
printf("enter the 2 numbers: ");
scanf("%d %d",&a,&b);
c=a+b;
printf("the sum is : %d ",c);
return(0);
}
这是一个简单的程序来添加 2 个数字。 我的程序会让我输入值..但它不会打印总和,也不会打印下一行。 它会一直运行到 scanf() 并且当我按下 Enter 键时,它会退出程序。 你能告诉我怎么了。我是一个初级程序员...
答案 0 :(得分:2)
这里有两件事你应该考虑。
以换行符结束打印输出,因为标准输出通常是行缓冲的。改为printf("the sum is : %d \n",c);
。或者在打印输出后显式调用 fflush(stdout);
。这将确保打印所有内容。
最后添加一些输入代码。就像一个额外的 scanf("%d", &a);
这基本上是一个小技巧,可以防止窗口在您看到最终输出之前关闭。另一种选择是添加 sleep(3);
以休眠 3 秒。第三种选择是查看是否有一些设置可以控制 IDE 中窗口的关闭。
答案 1 :(得分:1)
您的程序运行正常,但在打印输出后立即退出,让您没有时间查看它。
考虑在 return(0);
之前添加一些输入,例如 2 个 getchar();
调用。您需要 2,因为读取的第一个字符将是您在数字后键入的 \n
。