原题链接:[编程入门]求和训练
解题思路以及注意事项:
注意前面用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分
64 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
# include <stdio.h> int main() { double a, b, c; double i, j, k; i,j = 0; k = 1; double sum = 0; scanf ("%lf %lf %lf", &a, &b, &c); while (i <= a) { sum = sum + i; i++; } while (j <= b) { sum = sum + j*j; j++; } while(k <= c) { sum = 1.0/k + sum; k++; } printf("%0.2lf",sum); return 0; } 样例可以通过,但还是显示答案错误,是哪里有问题呢?#include <stdio.h> int main() { int a,b,c; scanf("%d %d %d",&a,&b,&c); int sum1=0,sum2=0; double sum3=0; int i; 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; } printf("%.2f",sum1+sum2+sum3); return 0; }#include<stdio.h> int main() { double a,b,c,sa,sb,sc,i; scanf("%lf%lf%lf",&a,&b,&c); for(sa=0,i=1;i<=a;i++) sa=sa+i; for(sb=0,i=1;i<=b;i++) sb=sb+i*i; for(sc=0,i=1;i<c;i++) sc=sc+(1.0)/i; printf("%lf",sa+sb+sc); return 0; } 为什么会显示答案错误呢#include <stdio.h> int main (void) { double a,b,c,d=1,f=1,h=1; int i,j,k; scanf("%lf%lf%lf", &a,&b,&c); double e=a; for(i = 1; i <a; ++i) { e+=d; d++; } double g=b*b; for(j = 1; j < b; ++j) { g+=f*f; f++; } double n=1/c; for(k = 1; k < c; ++k) { n+=1/h; ++h; } printf("%.2lf", e+g+n); return 0; } 虽然正确,但是复杂一些- -