一个有关求和的C语言程序题

题目如图。以下是我的代码,用codeblocks运行没有问题,但是在学校的网站上不能通过,求高手来指导下我这只弱弱的小菜鸟。感激不尽。#include<stdio.h>v... 题目如图。以下是我的代码,用code blocks运行没有问题,但是在学校的网站上不能通过,求高手来指导下我这只弱弱的小菜鸟。感激不尽。
#include<stdio.h>
void main()
{
int i,n,sum=0;
scanf("%d",&n);
if((n<1)&&(n>1000)) return;
long int a[n];
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
sum=sum+a[i];
printf("%d",sum);
}
第一行是一个整数n(1<=n<=1000),表示有多少个数求和;

第二行是n个整数,每个整数都在-10^5到10^5之间,每个整数之间用空格隔开。

输出和的值(不要输出回车)
展开
 我来答
porker2008
2014-07-20 · TA获得超过1.4万个赞
知道大有可为答主
回答量:7066
采纳率:62%
帮助的人:1.1亿
展开全部
#include<stdio.h>

void main()
{
int i, n, sum = 0;
int a[1000];
scanf("%d", &n);
for (i = 0; i < n; i++)
scanf("%d", &a[i]);
for (i = 0; i < n; i++)
sum = sum + a[i];
printf("%d", sum);
}
追问
按照你给的答案通过了,请问 int a[1000]; 放在开头和放在我之前那个位置有什么区别,只要把定义数组这个放在之前的位置就不能通过
追答
静态数组的大小必须编译的时候就确定大小的,也就是说是不可以输入n以后,再利用n的值来声明一个大小为n的数组
维她柠檬茶o3o
2014-07-20 · 超过14用户采纳过TA的回答
知道答主
回答量:30
采纳率:0%
帮助的人:25.4万
展开全部
if((n<1)&&(n>1000)) return;
改成这样子
if((n<1)||(n>1000)) return;
更多追问追答
追问
这个地方确实有问题,但是改了以后还是没有通过,不知道是不是其他地方哪里还有问题呢
追答
提示是什么错误
long int a[n];改成 int a[n];
因为后面输入是整数%d,而不是长整数%ld .
scanf("%d",&a[i]);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式