解题思路以及注意事项:
注意前面用double定义后面输出就得用%lf。
注意循环开始和结尾,否则容易出错。
实例代码:
#include"stdio.h" int main() { double a,b,c,sum1=0,sum2=0,sum3=0,i,sum=0; scanf("%lf",&a); scanf("%lf",&b); scanf("%lf",&c); for(i=1;i<=a;i++) //开始和结束非常重要 { sum1+=i; } for(i=1;i<=b;i++) { sum2+=i*i; } for(i=1;i<=c;i++) { sum3+=1.0/i; //注意要用1.0/i } sum=sum1+sum2+sum3; printf("%.2lf",sum); return 0; }
还有什么不懂的请在下面评论区留言,小方会及时为您解答
0.0分
82 人评分
#include<stdio.h> int main() { float a,b,c; float M=1; float num1=0,num2=0,num3=0; float ALL; scanf("%f %f %f\n",a,b,c); while(M<=a) { num1=num1+M; M=M+1; } while(M<=b) { num2=num2+(M*M); M=M+1; } while(M<=c) { num3=num3+(1.0/M); M=M+1; } ALL=num1+num2+num3; printf("%0.2f\n",ALL); return 0; } 各位大神哪里错了,请赐教
贾晓聪 2019-03-31 12:30:13 |
M 不对 第一个while后M=a
#include <stdio.h> #include <stdlib.h> #include <math.h> int main() { double sum=0; int a,b,c; a=b=c=0; scanf("%d%d%d",&a,&b,&c); //算出1~a的和 for(int i=1;i<=a;i++){ sum = sum+i; } //算出1~b的平方和 for(int i=1;i<=b;i++){ sum = sum + pow(i,2); } //算1~c倒数的和 for(int i=1;i<=c;i++){ sum = sum+1.0/i; } printf("%.2lf",sum); return 0; }
scanf("%1f",&a); scanf("%1f",&b); scanf("%1f",&c); 这个哪里有问题呢
为什么不可以用 i^2?
为什么循环必须是for (i = 1; i <= a; i++)而不可以是for(i=0;i<5;i++)呢?我用后者写出来的编译结果显示 inf
逻辑幻象 2019-02-22 15:44:48 |
i等于0 的话 在循环中就有0乘进去了 结果为 0
why3157 2019-07-25 14:34:59 |
那肯定是循环或者前面的定义那一块有问题