c语言第二次作业
#include<stdio.h> int main(void) { int n,grade,i,a,b,c,d,e; scanf("%d\n",&n); a=0;b=0;c=0;d=0;e=0; for(i=1;i<=n;i++){ scanf("%d",&grade); if(grade>=90) a++; else if(grade<90&&grade>=80) b++; else if(grade<80&&grade>=70) c++; else if(grade<70&&grade>=60) d++; else e++; } printf("%d %d %d %d %d",a,b,c,d,e); }
设计思路:这道题目要求我们统计学生成绩并且用五分制来判别人数,显而易见的我们应该用·循环来解决这个问题,并且在循环中利用判断语句来执行要求。
第一步:了解题目大致含义
第二步:构建合适的算法体系
第三步:进行算法调试
第四步:上传PTA
第五步:再次进行调试
遇到的问题
1、数组越界 原因:在scanf("%d",&grade)中未写&
#include<stdio.h> int main(void) { int i,x,y; for(i=1;;i++){ scanf("%d",&x); if(x==250) break; }y=i; printf("%d",y); return 0; }
设计思路:因为要输入多个数字所以决定利用for语句循环并且省略中间表达式并且用break来进行终止
第一步:了解题目题干
第二步:确定算法为循环以及判断
第三步:构建代码并且进行初步调试
第四步:上传PTA
第五步:最后再次调试
遇到的问题:
1、在进行构建程序时中括号个数出错
2、设置循环时i的初始值出错导致运行结果不对
二、总结和学习进度条
学习内容:分支、循环、判断的各种表达以及各种数学函数
评论同学:季琦
近几次代码行数变化: