c语言从键盘读入正整数n,求和=1^n+2^n+3^n+4^n.

要用到循环

#include <stdio.h>

#include <math.h> //pow函数在math.h头文件下,所以要包含进去进行预处理


int main()

{

int n, result;

printf("请输入正整数n: ");

scanf("%d", &n);

while(n != 0) //控制循环,知道输入0,结束;

{

//pow(2, n)表示求2的n次方;

result = pow(1, n) + pow(2, n)+ pow(3, n)+ pow(4, n);

printf("1^%d + 2^%d+ 3^%d+ 4^%d = %d \n\n", n, n, n, n, result);


//循环输入

printf("请输入正整数n: ");

scanf("%d", &n);

}

return 0;

}


运行结果:


温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-28
// 最简单的是用乘方函数,不过貌似你的要求是不能用
#include "stdio.h"

int main() {
  int sum = 0, i, n, j, temp=1;
  printf("n=");
  scanf("%d", &n);
  for(i=1; i<=4; i++) {
   for(j=0; j<n; j++) {
     temp *= i;
}
sum += temp;
temp = 1;
  }
  
  printf("sum=%d\n", sum);
  return 0;
}

第2个回答  2014-03-28
使用递推求n的次方。(循环问题常用的解题方法)

# include <stdio.h>
main( )
{
int n,i,t=1,sum=0;

scanf("%d", &n);
for(i=1;i<=4;i++){
t=t*n;
sum=sum+t;
}

printf("sum=%d", sum);

}本回答被提问者采纳
第3个回答  2014-03-28
int sum(int n){
int s=0,s1=1,s2=s,s3=3,s4=4;
for(int i=1;i<n;i++){
s1*=s1;
s2*=s2;
s3*=s3;
s4*=s4;

}
s=s1+s2+s3+s4;
return s;

}

你调用sum这个函数,就能得到值了!
第4个回答  2014-03-28
#include<stdio.h>
void main()
{ int n,i,sum,k1,k2,k3,k4;
scanf("%d",&n);
for ( i=0,k1=k2=k3=k4=1;i<n;i++ ) { k1*=1; kw*=2; k3*=3 k4*=4; }
sum=k1+k2+k3+k4;
printf("1^%d+2^%d+3^%d+4^%d=%d\n",n,n,n,n,sum);
}本回答被网友采纳