我们的老师给出的任务是创建一个程序,要求询问两个整数x
和y
和一个字符z
。输入的z
的字母可能是a
,它会加上两个整数,s
会减去它们,m
乘以d
除法。嵌套if语句:预期声明或输入结尾处的语句
老师试图在课堂上解释多个'if''else'陈述;但是,恐怕我无法对失踪的'{'在哪里做出正面或反面的评论。如果有人能够更好地理解这一点,可以解释为什么以及在哪里失踪的'{'将是不胜感激。
#include <stdio.h>
int main(void)
{
char let;
int x;
int y;
int a;
int s;
int m;
int d;
printf("Enter command letter \n");
scanf("%c", &let);
printf("Enter both integers \n");
scanf("%d%d%c", &x, &y);
if (let==a)
{
a=x+y;
printf("x+y is %d \n", a);
}
else
{
if (let==s)
{
s=x-y;
printf("x-y is %d \n", s);
}
else
{
if (let==m)
{
m=x*y;
printf("x*y is %d \n", m);
}
else
{
d=x/y;
printf("x/y is %d \n", d);
}
}
return(0);
}
为你添加修正版本,它真的很简单,因为你将是您使用哪种系统找到 –
?你的编辑器是否提供了一种方法来找到匹配的'{'''''''?它不提供自动缩进吗? –
无关的问题:你比较'if(let == a)'(和s,m,d类似),这意味着你将扫描的字母与未初始化的变量'int a;'进行比较。你应该比较'if(let =='a')'到字符常量''a''(等)。 –