第四次作业

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=;i<n;i++)
    {
        (p+i)->sum=(p+i)->score[]+(p+i)->score[]+(p+i)->score[];
    }
 }                              
void sort(struct student *p,int n)
{
    int i,j,k,m;
    for(i=;i<n-;i++)
    {
        k=i;
        for(j=i+;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)的代码行数和所用时间、博客字数和所用时间:

第四次作业