当前位置:   article > 正文

C语言程序设计实训教程-张玉生 张书月 朱苗苗/主编—实验14.4_c语言程序设计实训教程张玉生

c语言程序设计实训教程张玉生

本程序的功能:输入10个学生的学号、姓名和成绩,输出学生的成绩等级和不及格人数。每个学生的记录包括学号、姓名、成绩和等级,要求定义和调用函数setgrade (),根据学生成绩设置其等级,并统计不及格人数, 等级设置:85~100为A,70~84为B,60~69为C,0~59为D。请改正程序中的错误并调试

注意:改错时不允许增加及删除语句,只允许修改或移动语句的位置

#include <stdio.h>

#define N 10

struct student {

    int num;

    char name[20];

    int score;

    char grade;

};

int set_grade(struct student *p);

int main(void)

{

    struct student stu[N], *ptr;

    int i, count;

    ptr = stu;

    printf("Input the student's number, name and score:\n");

    for (i = 0; i < N; i++) {

        printf("No %d: ", i + 1); /*提示输入第i个同学的信息*/

        scanf("%d%s%d", &stu[i].num, stu[i].name, &stu[i].score);

    }

    count = set_grade(ptr);

    printf("The count (<60): %d\n", count);

    printf("The student grade:\n");

    for (i = 0; i < N; i++)

        printf("%d %s %c\n", stu[i].num, stu[i].name, stu[i].grade);

    return 0;

}

int set_grade(struct student *p)

{

    int i, n = 0;

    for (i = 0; i < N; i++, p++) {

        if (p->score >= 85)

            p->grade = 'A';

        else if (p->score >= 70)

            p->grade = 'B';

        else if (p->score >= 60)

            p->grade = 'C';

        else {

            p->grade = 'D';

            n++;

        }

    }

    return n;

}

调试结果:

9f608ae5603144919c24ec5717f39b0e.png

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号