自考英语二免考条件:C语言改错

来源:百度文库 编辑:神马品牌网 时间:2024/05/10 17:52:54
Mission:求S=a+aa+aaa+aa...a
a是一个数字 n个a是aa...a

我写了下面的这段代码可是编译正确但却完全达不到任务要求....
请各位GGJJ帮帮偶吧~~~
#include"math.h"
#include"stdio.h"
main()
{

int a,n,b,sum=0,m;
scanf("%d%d",&a,&n);

for(m=1;m<=n;m++) {
b=pow(a,m);
sum+=b;
}

printf("Sum=%d\n",sum);

}

数据范围没考虑好,
还有你那个POW(A,m)好象不是本题目的本意呢 应该是 AAAAAA.....
呵呵
仔细看一下题目吧!!!1

那个pow函数好像是double的,估计会有问题,你的程序没看出什么问题。我在VC6下运行好像也没问题吗。。。。

int 型数据的最大值为32767 如果a、n 的超过2、5就会超出数据范围。应把sum定义为双精度类型。

int a,n,b,sum=0 有问题,a,n,b其实并没有被赋值为0,
改成a=0;n=0;b=0试试

int a,n,b,sum=0,m;
这个错了