我刚刚开始学习C编程,所以我并没有真正处于高级水平.忍受我!
我有这段代码,我想我很容易理解我要做的事情.但是我得到一个错误,说没有if之前调用最后一个else.
我怀疑问题是if和else之间的if-else语句.你们怎么解决它?
int talet;
scanf("%d", &talet);
int i = 1;
while (i <= 99) {
int a; {
if (i % talet == 0 || talet == (i / 10) % 10 || talet == i % 10) {
if (talet % 10 == 0)
printf("\n");
else
continue;
}
printf("burr ");
else
printf("%d ", i);
}
i = i + 1;
}
Run Code Online (Sandbox Code Playgroud)
你的问题在这里:
}
printf("burr "); //<---
else
printf("%d ",i);
Run Code Online (Sandbox Code Playgroud)
你不能在else块之前有任何声明.所以删除它或将其移动到else或OR块中,如下所示:
} else {
printf("burr ");
printf("%d ",i);
}
Run Code Online (Sandbox Code Playgroud)
问题出在你的括号上。缩进对于理解在哪里打开和关闭括号很重要
int talet;
scanf("%d",&talet);
int i=1;
while(i<=99)
{
int a;
if (i%talet==0 || talet==(i/10)%10 ||talet==i%10)
{
if (talet%10==0)
printf("\n");
else
continue;
printf("burr ");
}
else
{
printf("%d ",i);
}
i=i+1;
}
Run Code Online (Sandbox Code Playgroud)