当前位置: 首页 > wzjs >正文

建新建设集团有限公司网站装修价格

建新建设集团有限公司网站,装修价格,网站注册信息查询,重庆工程造价信息价查询C语言综合案例:学生成绩管理系统 需求 1.存储最多50名学生的信息(不使用结构体) 2.每个学生包含: 学号(字符数组)姓名(字符数组)3门课程成绩(一维数组) …

C语言综合案例:学生成绩管理系统

需求

1.存储最多50名学生的信息(不使用结构体)

2.每个学生包含:

  • 学号(字符数组)
  • 姓名(字符数组)
  • 3门课程成绩(一维数组)

3.实现功能菜单:

  • 添加学生信息
  • 显示所有学生信息
  • 计算学生平均分
  • 查找最高分科目
  • 退出系统

代码

/*************************************************************************> File Name:    demo.c> Author:       张扣> Description:C语言综合案例:学生成绩管理系统> Created Time: 2025年02月27日 星期四 21时10分38秒************************************************************************/#include <stdio.h>
#include <string.h>//常量定义
#define MAX_STU 50      //定义学生数量
#define NAME_LEN 20     //名字的最大长度
#define ID_LEN 8        //学号的最大长度
#define COURSE_NUM 3    //课程数量//全局数组实现数据存储
char stu_id[MAX_STU][ID_LEN];       //学号二维数组
char stu_name[MAX_STU][NAME_LEN];   //姓名二维数组
int scores[MAX_STU][COURSE_NUM];    //成绩二维数组
int stu_count = 0;                  //当前实际学生数/***输入校验成绩*course 课程名称*/
int get_valid_score(const char* course)//const修饰的变量,值不能改变
{int score;while(1){printf("请输入%s成绩(0~100):",course);//校验:1.校验输入的数据格式 2.校验成绩的范围是否正确if(scanf("%d",&score == 1 && score >= 0 && score <= 100)){return score;}//输入有误while(getchar() != '\n');   //清空输入缓冲区printf("成绩输入有误!\n");}
}/***添加学生信息*/
void add_student()
{//判断数组是否已经存满if(stu_count >= MAX_STU){printf("存储已满!\n");return;//函数返回,后续代码不再执行}printf("\n---添加第%d个学生---\n",stu_count + 1);//输入学号printf("请输入学号:");scanf("%s",stu_id[stu_count]);//输入姓名printf("请输入姓名:");getchar();scanf("%[^\n]",stu_name[stu_count]);//%[^\n]匹配除了\n以外的输入//输入各科成绩scores[stu_count][0] = get_valid_score("语文");scores[stu_count][1] = get_valid_score("数学");scores[stu_count][2] = get_valid_score("英语");stu_count++;
}/***显示所有学生信息*/
void show_all()
{if(stu_count == 0){printf("暂无学生信息!\n");return;//跳出函数,后续代码不执行}//格式化输出信息printf("\n%-12s%-20s%-12s%-12s%-12s\n","学号","姓名","语文","数学","英语");for(int i = 0; i < stu_count; i++){//获取学号和姓名printf("%-12s%-20s",stu_id[i],stu_name[i]);for(int j = 0; j <  COURSE_NUM; j++){printf("%-12d",scores[i][j]);}printf("\n");}printf("\n");
}/***计算平均分*/
void calc_average()
{if(stu_count == 0){printf("暂无数据!\n");return;}char target_id[ID_LEN];printf("请输入要查询的学号:");scanf("%s",target_id);for(int i = 0; i < stu_count; i++){if(strcmp(stu_id[i],target_id) == 0){float sum = 0;for(int j = 0; j < COURSE_NUM; j++){sum += scores[i][j];}printf("平均分:%.2f\n",sum/COURSE_NUM);return;}}printf("未找到该学生!\n");
}/***查找最高分科目*/
void find_max()
{int max_score = -1;char max_course[20];char max_stu[NAME_LEN];for(int i = 0; i < stu_count; i++){for(int j = 0; j < COURSE_NUM; j++){if(scores[i][j] > max_score){max_score = scores[i][j];//最高成绩对应的姓名strcpy(max_stu,stu_name[i]);switch(j){case 0:strcpy(max_course,"语文");break;case 1:strcpy(max_course,"数学");break;case 2:strcpy(max_course,"英语");break;}}}}if(max_score != -1){printf("最高分记录:%s的%s获得%d分\n",max_stu,max_course,max_score);}else{printf("暂无数据!\n");}
}int main(int argc,char *argv[])
{//定义一个变量,用来接收用户的输入int choice;while(1){//设计头printf("\n=== 学生成绩管理系统 v1.0 ===\n");printf("1.添加学生信息\n");printf("2.显示所有学生信息\n");printf("3.查看平均分\n");printf("4.查看最高分\n");printf("5.退出系统\n");printf("请选择操作:");//过滤非数字int result = scanf("%d",&choice);//该判断的作用,检测是否输入的是整数,输入的数据匹配scanf() == 1,不匹配scanf() != 1if(result != 1){//如果输入的不是数字,就执行这个判断//清空输入缓冲区while(getchar() != '\n');printf("输入有误!\n");continue;}//过滤掉1~5以外的数字//校验switch(choice){case 1://添加学生信息add_student();break;case 2://显示所有学生信息show_all();break;case 3://查看平均分calc_average();break;case 4://查找最高分find_max();break;case 5://退出系统printf("系统已退出!\n");return 0;default:printf("无效选项!\n");}}return 0;
}
http://www.dtcms.com/wzjs/817427.html

相关文章:

  • 中学生制作网站怎么做手机主题wordpress
  • 海口模板建站定制网站企业网站不被百度收录
  • 陕西省住房和建设厅网站上海模板网站建站
  • 餐饮环境评估在哪个网站做dede网站地图模板下载
  • 建立网站的流程的合理顺序中国人做外贸网站都卖什么手续
  • 天津市做公司网站的公司网站建设都需要哪些材料
  • 苏州公司网站建设公司杭州网站建设方案
  • wordpress外贸建站教程手机wap网站模板
  • 生活家装饰官方网站广告公司名称取名
  • 做led视频好的网站周浦做网站
  • 网站建设咨询公司排名cad图库大全素材免费下载
  • 银锭网那个网站做的 好怎么在网站后台删除图片
  • python做网站比php好html5网站制作分工
  • 网站开发常用图标自己做的网站怎么接入数据库
  • 鹤壁哪有做网站的做网站用jquery
  • 常熟建设局网站网页设计制作思路
  • 宁波网站优化建站公司微信个人公众号怎么创建
  • 怎么做类似美团的网站公司网页设计教程
  • 网站表单提交广告设计公司怎么找业务
  • design设计网站html5视频标签
  • 建网站的意义十堰网站制作价格
  • 做物流的网站都有什么风险Wordpress news模板
  • 建设电商网站报价黑帽seo优化软件
  • 做网站后台数据库建设华为云域名注册
  • 互动网站建设什么意思高端文化网站
  • 网站返回500错误怎么用云主机做网站
  • 企业网站建设需要什么资料电商类网站有哪些
  • 做网站需要到哪些部门登记网络广告词
  • 备案增加网站网站建设教程怎么建
  • 前几年做那个网站能致富工艺品网站怎么做