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.本体调试过程碰到问题及解决办法
无
git 地址:https://git.coding.net/hanmingchen/disicizuoye.git
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.本体调试过程碰到问题及解决办法
无
git 地址:https://git.coding.net/hanmingchen/disicizuoye.git
这两周来所有PTA作业中题目所使用的知识点:
1.用指针处理链表
2.共用体的概念
3.共用体的引用方式
4.枚举类型
表格和折线图呈现你本周(4/9 8:00~4/26 8:00)的代码行数和所用时间、博客字数和所用时间
原文:https://www.cnblogs.com/cfy66/p/8947861.html