一.题目:
7-3:
1.代码:
#include<stdio.h>
#include<math.h>
int main()
{
int i,n,a;
double sum=0;
scanf("%d",&n);
for(i=1;i<=n;i=i+1)
{
a=pow((-1),i+1);
sum = sum + a * i/(2.0f*i-1);
}
printf("%.3f",sum);
return 0;
}
2.设计思路:
1.设出i,n,a,sum 四个量 sum赋值0,sum用浮点数;
2.将n赋值,使用for语句当i<n时i=i+1;
3.在循环中运用数学函数求出a,将a带入sum的函数 求出sum值;
4.循环结束输出sum值;
3.流程图:

4.提交列表:

5.遇到问题:最开始的sum没注意到用浮点型以及后面的计算中2.0f没用到浮点数导致计算结果出现很大偏差
解决办法:将sum输入改为浮点型,2改为2.0f。
错误代码及结果:


7-5
1.代码
#include<stdio.h>
int main()
{
int sum=0,i,n,num,count=0;
float average;
scanf("%d",&n);
if(n>0)
{
for(i=0;i<n;i=i+1)
{
scanf("%d",&num);
sum=sum+num;
average=sum/(n*1.0f);
if(num>=60)
{
count=count+1;
}
}
printf("average = %.1f\n",average);
printf("count = %d",count);
}
if(n==0)
{
printf("average = 0.0\n");
printf("count = 0");
}
}
2.设计思路:
1.设出sum=0,i,n,num,count=0,average;
2.输入n,判断n>0,使用循环for当i<是i=i+1;
3.循环中输入num分数,并用sum中间值求出平均值average;
4.如果num>=60,及格人数count++;
5.结束循环输出average和count;
3.流程图:
4.提交列表:

5.遇到问题:编写代码时也遇到了很多编译问题,少分号和部分花括号;
解决办法:根据devc++的错误提示进行更改;
二.上传代码:
git地址:
原文:http://www.cnblogs.com/nothingistrue/p/7858481.html