第三次作业
https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2359
第七次作业
7-3 统计学生平均成绩与及格人数
1.代码:
#include<stdio.h> int main(void) { int i=0,N=0,grade=0,count=0,sum=0; double average=0; scanf("%d",&N); for(i=1;i<=N;i++){ scanf("%d",&grade); sum = sum+grade; if(grade>=60){ count++; } } if(N>0) printf("average = %.1f\n",sum*1.0/N); else printf("average = %.1f\n",sum*1.0); printf("count = %d",count); return 0; }
2.解题思路:
1>首先定义5个整形变量 i,N,grade,count,sum和浮点型变量average;
2>输入N;
3>进入for循环注明i=1;i<=N;i++;
4>赋值,令sum = sum+grade;
5>进入if循环,若grade>=60,则count++;
6>若N>0;average = sum*1.0/N;若N<=0,则average = sum*1.0;
7>最后输出count;
3.流程图:
结果:
调试:
错误调试:
遇到的问题:
1>还是不能准确的找到整形变量和浮点型;
2>没掌握准确的找到整形的方法,以致不能快速的完成代码的作业;
3>在进行If判断的时候不知道输出的average是什么,没有明确自己定义的到底是什么含义;
4>在for和if同时出现的时候还是有一点发蒙;
解决方法:
1>在整数型和浮点型的问题上我翻看了课本;
2>在if与for的处理上我询问了同学;
3>关于average我上网搜了一下,看到了详解;
第九次作业
7-1 求整数的位数及各位数字之和
1.代码:
#include <stdio.h> int main() { int b,N,sum; scanf("%d",&N); b=0; sum=0; do { sum=sum+(N%10); b=b+1; N/=10; } while(N!=0); printf("%d %d",b,sum); return 0; }
2.解题思路:
1>定义整形变量b,N,sum;
2>输入N;
3>利用do,while,算出所需数值;
4>输出b,sum;
3.流程图:
结果:
调试 :
错误调试:
遇到的问题:
1>不是很明确scanf输入的是那个变量;
2>对do,while的是使用条件还不是很了解,老是出错;
3>在刚开始写的时候不知道N/=10是什么意思;
解决方法:
通过询问同学将这道题弄清楚了;
第10次作业
7-3 掉入陷阱的数字
1.代码:
#include<stdio.h> int main() { int num,n1 = 0,n2 = 0,i,j = 1; scanf("%d",&num); while(num != n1) { n1 = num; for(i = 0,n2 = 0;i < 5; i++) { n2 += num % 10; num /= 10; } num = n2 * 3 + 1; printf("%d:%d\n",j,num); j++; } return 0; }
2.解题思路:
1>定义变量num,n1 = 0,n2 = 0,i,j = 1;
2>输入变量num;
3>利用while和for的嵌套以及公式 n2 += num % 10;num /= 10;num = n2 * 3 + 1算出比值;
4>输出结果;
3.流程图:
结果:
调试:
错误调试:
小结:
在这一周我们学习了while和for循环以及套用,也巩固了之前学的内容;虽然现在写代码还是很吃力,但是我相信只要我多敲多练一定能掌握;
图表:
评论:
1>李 敖:https://www.cnblogs.com/1a2B3c4D/p/10017402.html