提示: 作者被禁止或删除 内容自动屏蔽

在网吧通宵泡论坛发贴子,挣齐所有大学学费,详情请点击: http://www.vikkk.tk/
程序代码:#include <stdio.h>
int fc (int ,int );
int main(void)
{
int a,b,y;
printf("输入终止值:");
scanf("%d", &a);
printf("输入n次幂:");
scanf("%d", &b);
y = fc(a,b);
printf("最终结果: %d\n",y);
return 0;
}
int fc (int na,int nb)
{
int i,j;
int temp;
int save = 0;
for (i=1; i<=na; ++i)
{
temp = i; //循环到 n ,用于保存临时值,而不是修改i的值
for (j=1; j<nb; ++j) //n次方
{
temp = temp * i; //这里可不能是temp * temp 哦,因为这样假设计算的是2的立方的话就会变成 2 * 2 = 4, 4 * 4 = 16,而不是 2 * 2 = 4, 4 * 2 = 8
}
save = save + temp; //保存
}
return save;
}
程序代码:int fc(int n,int k)
{ int j,i,s;
for(j=1;j<=n;j++)
{
s=0; //由于你每次都执行了归零操作,s将无法保存一直下来的数
for(i=1;i<=k;i++) //假设输入的是2 这样会循环两次的,因为 2<=2才会停止,所以这样算的是两次j*j 所以结果就是j*j*j 。(不知道怎么表达了,呵呵 看看就好)
{ j*=j;} //这样会直接对for循环里面的j进行运算,第一次是 1 * 1=1 , 1 * 1 = 1所以没影响, 第二次就是 2 * 2 =4, 4 * 4 = 16并且由于16<=n 成立所以跳出循环
s+=j;
}
return s; //所以最终返回的就是4 * 4 的值
}
void main()
{ int y,a,b;
scanf("%d%d",&a,&b);
y=fc(a,b);
printf("%d",y);
}