 | voidmain()......
void main()
{
int a[100],b[100],d[100];
int i,j=0;
int n[100],sum[100];
for(i=0;i<100;i++){
scanf("%d %d %d",&a[i],&b[i],&d[i]);
if(a[i]==0&&b[i]==0&&d[i]==0)
break;
}
for(j=0;j<i;j++){
n[j]=(b[j]-a[j])/d[j]+1;
sum[j]=n[j]*a[j]+(n[j]*(n[j]-1))/2*d[j];
printf("%d\n",sum[j]);}
}
追问这个程序运行出来了,可是交上去还被不接受啊!哪里有问题呢??
追答找到问题了:(这下绝对可以交了)#include<stdio.h>#include<math.h>void main(){ int a[100],b[100],d[100]; int i,j=0;int n[100],sum[100];printf("请输入整数组(每组3个数:起始数,终止数,公差值,务必依次输入;以0 0 0为结束标志):\n");for(i=0;i<100;i++){scanf("%d %d %d",&a[i],&b[i],&d[i]); if(a[i]==0&&b[i]==0&&d[i]==0) break;}for(j=0;j<i;j++){ if(d[j]==0) {if(a[j]==b[j]) printf("该数组无法计算.\n"); else printf("不存在这样的数组.\n"); } else{ if((a[j]==b[j])||((b[j]-a[j])%d[j])!=0) printf("不存在这样的数组.\n"); else{ n[j]=fabs((b[j]-a[j])/d[j])+1; sum[j]=n[j]*a[j]+(n[j]*(n[j]-1))/2*d[j]; printf("数组和=%d.\n",sum[j]); } }}}
| |