您的位置:首页 > 其它

第七周作业

2017-11-11 08:28 330 查看

一、PTA作业

题目7-1 求1到100的和

1.实验代码

#include<stdio.h>
int main()
{
int i=1 ,sum=0;
while(i<=100){
sum=sum+i;
i++;
}
printf("sum = %d",sum);
}


2 设计思路

(1)文字描述

第一步:理解题意,可以用for语句或者是while语句。
第二步:定义整数型变量i(被加数),sum(总数)。

第三步:用while语句打出循环从一到一百的框架。

第四步:用printf函数输出%d 得到sum的结果。

(2)流程图

3.本题调试过程碰到问题及解决办法

错误提示的截图

先是用for语句做,后来找不到错误。改用while语句



问题及解决办法:for语句外头少了一个中括号。加上就解决了。

4.本题PTA提交列表



错误提示解释说明:这题用了两种语句进行解答,错误为少了括号,细节问题。

题目7-3 求交错序列前N项和

1.实验代码

#include<stdio.h>
int main(){
int i,N,flag=1;
double sum;
scanf("%d",&N);
for(i=1;i<=N;i++){
sum+=flag*i*1.0/(2*i-1);
flag=-flag;
}
printf("%.3f",sum);
return 0;
}


2 设计思路

(1)文字描述

第一步:定义整数型变量i,N,flag,浮点函数sum。
第二步:用scanf函数读入N。

第三步:打出for循环的基本框架,flag于下一次循环时赋值为它的相反数。

第四步:输出sum(总数)的值。

(2)流程图

3.本题调试过程碰到问题及解决办法

错误提示的截图

第七行的flag没有定义,所以sum出问题了





问题及解决办法:本题一开始没发现错误,看了半天,最后翻译答案提示才知道,flag没有定义。问题已解决。

4.本题PTA提交列表



错误提示解释说明:错误为flag未定义导致sum无法计算。

题目7-5 统计学生平均成绩及及格人数

1.实验代码 (学校网络太好,代码插不进去)

#include<stdio.h>
int main()
{
int i,n,grade,count;
double sum,average;
scanf("%d",&n);
if(n!=0)
{
for(i=1;i<=n;i++)
{
scanf("%d",&grade);
sum=sum+grade;
if(grade>=60)
count++;
}
average=sum/n;
printf("average = %.1f\n",average);
printf("count = %d",count);
}
else if(n==0){
printf("average = %.1f\n",0.0);
printf("count = %d",0);
}

return 0;
}

2 设计思路

(1)文字描述

第一步:定义整数型变量 i,n,grade,count,浮点函数sum,average。
第二步:用scanf函数输入n。

第三步:运用if else if语句,在n!=0中执行for循环语句,成绩大于60的计入。

第四步:输出平均值以及及格人数。

(2)流程图

3.本题调试过程碰到问题及解决办法

错误提示的截图

粗心大意,错吧for打成if,没有对if语句进行分类,没有平均值的计算公式,总之,出大问题。



问题及解决办法:找不到错误在哪,后来对照错误提示翻译,才发现grade=0,t=0漏了,而且没有讨论N=0的情况。

4.本题PTA提交列表







错误提示解释说明:第七·第五行错误,第十四行错误,由于没有初始化导致的。

要求四

要求五

个人总结:本周复习了for循环语句以及学习了双重循环语句。对一些细节方面更加完善。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: