C语言题目:成绩归类

题目描述

编写程序,输入一批学生的成绩,遇0或负数则输入结束,要求统计并输出优秀(大于85)、通过(60~84)和不及格(小于60)的学生人数。

输入格式

一批学生成绩,遇0结束

输出格式

输出各个成绩段的人数

样例输入

88 71 68 70 59 81 91 42 66 77 83 0

样例输出

>=85:2
60-84:7
<60:2

代码解析

  1. 包含标准输入输出库: #include <stdio.h> 这一行代码是预处理指令,它告诉编译器在实际编译之前包含标准输入输出库(stdio.h)。这个库提供了进行输入输出操作的功能,比如printfscanf函数。

  2. 定义主函数: int main(void) 是C程序的入口点,void表示这个函数不接受任何参数。

  3. 定义变量:

    • int excellence:用于计数优秀(85分及以上)的成绩数量,初始化为0。
    • int pass:用于计数及格(60分至84分)的成绩数量,初始化为0。
    • int no_pass:用于计数不及格(60分以下)的成绩数量,初始化为0。
    • int arr[1000]:定义了一个整型数组,用于存储用户输入的成绩,数组大小为1000。
    • int i:用于记录当前读取成绩的索引位置,初始化为0。
  4. 输入成绩并统计:

    • 使用while (1)创建一个无限循环,用于持续读取用户的输入直到遇到非正整数(即成绩小于或等于0)。
    • scanf("%d", &arr[i]);这个函数调用用于从标准输入读取一个整数,并将其存储在数组的当前索引位置。
    • 如果读取的成绩arr[i]大于或等于85,增加excellence的计数。
    • 如果成绩在60到84之间,增加pass的计数。
    • 如果成绩小于60,增加no_pass的计数。
    • 每次读取后,索引i自增,准备读取下一个成绩。
  5. 输出统计结果: printf(">=85:%d\n60-84:%d\n<60:%d\n", excellence, pass, no_pass); 这个函数调用用于输出三个等级的成绩计数,分别对应优秀、及格和不及格的数量。

  6. 函数返回: return 0; 表示main函数执行成功并返回0。在C语言中,main函数的返回值通常用于表示程序的退出状态,其中0表示成功。

源代码

#include <stdio.h>
int main(void)
{
	int excellence = 0, pass = 0, no_pass = 0;
	int arr[1000];
	int i = 0;
	while (1)
	{
		scanf("%d", &arr[i]);
		if (arr[i] <= 0)
			break;
		if (arr[i] >= 85)
			excellence++;
		else if (arr[i] >= 60 && arr[i] <= 84)
			pass++;
		else
			no_pass++;
		i++;
	}
	printf(">=85:%d\n60-84:%d\n<60:%d\n", excellence, pass, no_pass);
	return 0;
}

相关推荐

  1. C语言题目成绩归类

    2024-04-14 04:02:07       37 阅读
  2. 归并排序-成绩输出-c++

    2024-04-14 04:02:07       8 阅读
  3. C语言题目

    2024-04-14 04:02:07       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-14 04:02:07       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-14 04:02:07       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-14 04:02:07       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-14 04:02:07       18 阅读

热门阅读

  1. Vector部分底层源码解析

    2024-04-14 04:02:07       20 阅读
  2. Vue 打包或运行时报错Error: error:0308010C

    2024-04-14 04:02:07       53 阅读
  3. RTK高精度定位

    2024-04-14 04:02:07       15 阅读
  4. LeetCode 139. 单词拆分

    2024-04-14 04:02:07       14 阅读
  5. 人工智能技术的创业机遇

    2024-04-14 04:02:07       15 阅读
  6. [ LeetCode ] 题刷刷(Python)-第49题:字母异位词分组

    2024-04-14 04:02:07       14 阅读
  7. 如何在Python中实现设计模式?

    2024-04-14 04:02:07       16 阅读
  8. C动\静态库编译

    2024-04-14 04:02:07       14 阅读
  9. python3面向对象

    2024-04-14 04:02:07       14 阅读
  10. pyqt写个星三角降压启动方式2

    2024-04-14 04:02:07       13 阅读
  11. postgis使用

    2024-04-14 04:02:07       16 阅读