c语言:总出现error missing ; before type

#include<stdio.h>intmain(){intn;scanf("%d",&n);inta,b,c,d,result;a=n/1000;b=(n-a*1000... #include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a, b, c, d, result;
a=n/1000;
b=(n-a*1000)/100;
c=(n-a*1000-b*100)/10;
d=n%10;
result=a*b*c*d;
printf("%d,%d,%d,%d,%d/n,a,b,c,d,result);
remain 0
}

--------------------Configuration: pr - Win32 Debug--------------------
Compiling...
min.c
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(6) : error C2143: syntax error : missing ';' before 'type'
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(7) : error C2065: 'a' : undeclared identifier
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(8) : error C2065: 'b' : undeclared identifier
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(9) : error C2065: 'c' : undeclared identifier
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(10) : error C2065: 'd' : undeclared identifier
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(11) : error C2065: 'result' : undeclared identifier
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(12) : error C2001: newline in constant
F:\c++\Microsoft Visual Studio\MyProjects\pr\min.c(13) : error C2146: syntax error : missing ')' before identifier 'remain'
执行 cl.exe 时出错.
min.obj - 1 error(s), 0 warning(s)
展开
 我来答
蓉雪球
推荐于2017-09-26 · TA获得超过8998个赞
知道大有可为答主
回答量:2846
采纳率:79%
帮助的人:756万
展开全部

根据我的程序编译结果来看吧~

这里提醒你没加后引号(正规地说是没加双撇号)

最后的你拼错了,应该是return;

最后的编译:

也就是你有这几点需要注意的地方。


但我认为有几个没编译出来的问题有待改善:

比如你在输出时应该写“\n”表示换行。

以下是我最后的结果。

更多追问追答
追问

为什么还是错误
追答

楼主,你还个地方没修正。是第12行的双引号。

我最后一幅图是已经改完的了。

源程序如下:

#include<stdio.h>
int main()
{
 int n; 
    scanf("%d",&n);
 int a, b, c, d, result;
 a=n/1000;
 b=(n-a*1000)/100;
 c=(n-a*1000-b*100)/10;
 d=n%10;
 result=a*b*c*d;
 printf("%d,%d,%d,%d,%d\n",a,b,c,d,result);
return 0;
}
linnjing
2015-11-05 · TA获得超过2632个赞
知道大有可为答主
回答量:1230
采纳率:91%
帮助的人:547万
展开全部
抛开确实缺少分号这种正常情况,其他多数情况下,这是C语言源文件中出现了全角标点符号导致的,比如全角的逗号、分号、等号。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
好嘞啊啊啊啊
2013-10-25 · TA获得超过2612个赞
知道大有可为答主
回答量:1860
采纳率:66%
帮助的人:1233万
展开全部
只有一个原则性的错误
变量声明要放在最前面

int n;
scanf("%d",&n);//由于这句 后面的变量声明 就不是在最前了 虽然有些编译器是允许的,但你的编译器不允许
int a, b, c, d, result;

还有最后 remain 0 应写成return 0; 注意后面分号不要漏 还有不要拼错
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tianlansefy
2013-10-25 · 超过13用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:35.8万
展开全部
目测scnaf()和下面int a, b, c, d的两行末尾可能有中文分号。可以把代码部分上个截图看一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式