哪里错了哥哥们
两个错误,一个是y==pow()这个==应该改为=,其次,pow(i,2)是第二个问题
#include <stdio.h>
#include <math.h>
int main () {
int sum,i,n;
double y;
sum = 0;
printf("请输入n的值:");
scanf("%d",&n);
for(i =1;i <=n;i++) {
y = pow(i,i);
sum = sum+y;
}
printf("%d\n",sum);
return 0;
}
for循环里只需要写 sum+=i*i; 就可以啦
你的scanf输入的时候标识符是%d,这个是整形变量,你赋值的n也必须是整形,但是你一开始定义n的时候定义的double型,就导致n没有进去。你的程序y==pow(i,i)根本没有进去。
int main()
{
double sum, i;
int n;
double y = 0;
sum = 0;
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
y = pow(i, i);
sum = sum + y;
}
return 0;
}