C语言!在TURBO C上运行的时候老说declaration syntax error~找不到究竟是哪里错了~麻烦各位帮帮忙!

#include<stdio.h>#defineM20intx,N,r,top;intS[M];top=-1;scanf("PleaseenterN=%d\n",&N);... #include <stdio.h>
#define M 20

int x,N,r,top;
int S[M];
top=-1;
scanf("Please enter N=%d\n", &N);
scanf("Please enter r=%d\n", &r);
if(r!=8||r!=16)
{
returns 0;
}

while(N)
{ top++;
s[top] = N % r;
N= N / r;
}
while(top>=0)
{ x=s[top];
top--;
printf("%d",x);
}
getchar();
展开
 我来答
伍拾步
2010-04-29 · TA获得超过8199个赞
知道大有可为答主
回答量:1852
采纳率:100%
帮助的人:1907万
展开全部
1.if(r!=8||r!=16)应该是if(r!=8&&r!=16)
2.
scanf("Please enter N=%d\n", &N);
scanf("Please enter r=%d\n", &r);
应改成
printf("Please enter N=");
scanf("%d", &N);
printf("\nPlease enter r=");
scanf("%d", &r);
3.returns 0; return 多了个s
4.前面定义数组S是大写的后面用小写的,这是不行的,有大小写区别的

更改后的代码如下

#include <stdio.h>
#define M 20

int main()
{
int x,N,r,top;
int S[M];
top=-1;
printf("Please enter N=");
scanf("%d", &N);
printf("\nPlease enter r=");
scanf("%d", &r);
if(r!=8&&r!=16)
{
return 0;
}
while(N)
{ top++;
S[top] = N % r;
N= N / r;
}
while(top>=0)
{ x=S[top];
top--;
printf("%d ",x);
}
getchar();
}
匿名用户
2010-04-29
展开全部
修改如下:

#include <stdio.h>
#define M 20
int main(void) /*注意这里*/
{ /*注意这里*/
int x,N,r,top;
int s[M]; /*注意这里*/
top=-1;
printf("Please enter N="); /*注意这里*/
scanf("%d", &N); /*注意这里*/
printf("Please enter r="); /*注意这里*/
scanf("%d", &r); /*注意这里*/
if(r!=8||r!=16)
{
return 0; /*注意这里*/
}

while(N)
{ top++;
s[top] = N % r;
N= N / r;
}
while(top>=0)
{ x=s[top];
top--;
printf("%d",x);
}
getchar();
return 0; /*注意这里*/
} /*注意这里*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式