原题链接:[编程入门]求和训练
解题思路以及注意事项:
注意前面用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(){ int sum1=0; int sum2=0; int sum3=0; int i; i=1; float a,b,c; scanf("%f%f%f",&a,&b,&c); while(i<a){ sum1=sum1+i; i++; printf("%.2f\n",sum1); } while(i<b){ sum2=sum2+i*i; i++; printf("%.2f\n",sum2); } while(i<c){ sum3=sum3+1.0/i; i++; printf("%.2f\n",sum3); } } 请问为什么这么写运行的结果都是0.00呢?#include<stdio.h> int main() { double a,b,c; double x1=0,x2=0,x3=0; int i,j,k; double x; printf("ple enter three nums:"); scanf("%lf %lf %lf",&a,&b,&c); for(i=1;i<a+1;i++) { x1+= i; } for(j=1;j<b+1;j++) { x2+= (j*j); } for(k=1;k<c+1;k++) { x3+= (double)1/k; } x=x1+x2+x3; //printf("x1=%lf,x2=%lf,x3=%lf\n",x1,x2,x3); printf("%.2lf",x); return 0; } 这个哪里有问题呢,测试了样例输入,没问题啊,提交就报错#include<stdio.h> int sum_a(int a) { int i,result=0; for(i=1;i<=a;i++) result+=i; return result; } int square_sum(int a) { int i,result=0; for(i=1;i<=a;i++) result+=i*i; return result; } double reciprocal_num(int a) { int i; double result=0; for(i=1;i<=a;i++) result+=1.0/i; return result; } int main(void) { int a,b,c; double sum=0; printf("Please enter three numbers:"); scanf("%d %d %d",&a,&b,&c); sum=sum_a(a)+square_sum(b)+reciprocal_num(c); printf("%.2lf",sum); return (0); }#include<stdio.h> int main() { double sum1=0,sum=0,sum2=0,sum3=0,a,b,c,i; scanf("%Lf %Lf %Lf",&a,&b,&c); for(i=1;i<=a;i++) { sum1=sum1+i; } for(i=1;i<=b;i++) { sum2=sum2+i*i; } for(i=1;i<=c;i++) { sum3=sum3+1.0/i; } sum=sum1+sum2+sum3; printf("%.2Lf",sum); return 0; } 为什么会提示答案错误呢