我都是编程新手,所以请帮助我。结果变量似乎没有正确的值。我知道使用它更好cin
,cout
但我的导师让我使用printf
and scanf
。
如果我将代码更改为 printf("%d", result); 我会得到:运行时检查失败 #3 - 变量“结果”正在使用而没有被初始化。如果我将代码更改为 scanf("%c", &c); %c 将从第一个 scanf() 获得空白!!!所以我必须这样写 scanf("%c%*c", &c); 或者这样 scanf(" %c", &c);. 与 %d 或 %f 相比,似乎 %c 不会跳过空格。
#include<stdio.h>
#include<conio.h>
int main ()
{
int n1, n2;
int result;
char c;
printf("Lotfan addad aval ra vared konid\n");
scanf("%d", &n1);
printf("Lotfan addad Dovom ra vared konid\n");
scanf("%d", &n2);
printf("Please choose an operator\n");
scanf("%c%*c", &c);
if (c=='+')
{
result=n1+n2;
}
else if (c=='-')
{
result=n1-n2;
}
else if (c=='*')
{
result=n1*n2;
}
else if (c=='/')
{
result=n1/n2;
}
//else
//{
//printf("error");
//}
//printf("%d%c%d=%d" ,n1,c,n2,&result);
printf("%d", &result);
getch();
return 0;
}