第四次作业
6-1 按等级统计学生成绩
1.设计思路
(1)第一步:分析题意定义整型变量,统计不及格成绩出现次数。
第二部:运用指针,按要求输入,函数返回。
(2)流程图:略
2.实验代码:
int set_grade( struct student *p, int n ) { int count=0,i; for(i=0;i<n;i++) { if((p+i)->score>=85&&(p+i)->score<=100) (p+i)->grade = 'A'; else if((p+i)->score>=70&&(p+i)->score<=84) (p+i)->grade = 'B'; else if((p+i)->score>=60&&(p+i)->score<=69) (p+i)->grade = 'C'; else if((p+i)->score>=0&&(p+i)->score<=59) { (p+i)->grade = 'D'; count++; } } return count; }
3.本体调试过程碰到问题及解决办法
错误信息1:输入错误
错误原因1:符号打错了
git地址:https://coding.net/u/live2/p/969/git/blob/master/1.cpp?public=true
6-2 结构体数组按总分排序
1.设计思路
(1)第一步:定义整型变量。
第二部;设计简单的函数,执行题中所需功能。
第三部:定义循环变量,通过选择排序对结构体进行排序,上机运行程序,检查程序对错。
(2)流程图
略
2.实验代码:
#include<string.h> void calc(struct student *p,int n) { int i; for(i=0;i<n;i++) { (p+i)->sum=(p+i)->score[0]+(p+i)->score[1]+(p+i)->score[2]; } } void sort(struct student *p,int n) { int i,j,k,m; for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) { if((p+j)->sum>(p+k)->sum) { k=j; } } if(k!=i) { struct student t; t=*(p+i),*(p+i)=*(p+k),*(p+k)=t; } } }
3.本体调试过程碰到问题及解决办法
错误信息1:无
错误原因1:无
git地址:https://coding.net/u/live2/p/4525/git/blob/master/1.cpp?public=true
这两周来所有PTA作业中题目所使用的知识点:
1.用指针处理链表
2.共用体的概念
3.共用体的引用方式
4.枚举类型
表格和折线图呈现你本周(4/9 8:00~4/26 8:00)的代码行数和所用时间、博客字数和所用时间: