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

C基础 8

一、思维导图二、课后习题#includemyhead.h #define Max_Stu 100 //最大学生数 //函数声明 //学生信息录入函数 void Enter_stu(int *Num_Stu,char Stu_name[][50],int Stu_score[]); //查看学生信息 void Print_stu(int Num_Stu,char Stu_name[][50],int Stu_score[]); //求出成绩最好的学生的成绩 void Best_Stu(int Num_Stu,char Stu_name[][50],int Stu_score[]); //按姓名升序排序 void Sort_name(int Num_Stu,char Stu_name[][50],int Stu_score[]); //按成绩对学生升序排序 void Sort_score(int Num_Stu,char Stu_name[][50],int Stu_score[]); /**********************主函数*************************/ int main(int argc, const char *argv[]) { printf(\t\t************学生管理系统************\n); printf(\t\t1、 录入学生信息 \n); printf(\t\t2、 查看学生信息 \n); printf(\t\t3、输出成绩最好的学生 \n); printf(\t\t4、按姓名对学生排序 \n); printf(\t\t5、按成绩对学生排序 \n); printf(\t\t0、 退出 \n); //定义二维字符数组存放学生姓名 //定义一维数组存放学生成绩 char Stu_name[Max_Stu][50]; int Stu_score[Max_Stu]; int Num_Stu 0; //初始化录入学生人数 //菜单 int menu 0; do { printf(请输入选项); scanf(%d,menu); getchar(); //多分支选择执行对应功能 switch(menu) { case 1://录入学生信息 //调用信息录入函数 Enter_stu(Num_Stu,Stu_name,Stu_score); break; case 2://查看学生信息 Print_stu(Num_Stu,Stu_name,Stu_score); break; case 3://求成绩最高的学生信息 Best_Stu(Num_Stu,Stu_name,Stu_score); break; case 4://按姓名升序排序 Sort_name(Num_Stu,Stu_name,Stu_score); break; case 5://按成绩对学生升序排序 Sort_score(Num_Stu,Stu_name,Stu_score); case 0://退出 break; default: printf(输入错误请重新输入\n); break; } } while(menu !0); return 0; } //学生信息录入函数 void Enter_stu(int* Num_Stu,char Stu_name[][50],int Stu_score[]) { //提示输入学生个数作为参数传给录入函数 printf(请输入录入学生人数); int NUM *Num_Stu; scanf(%d,Num_Stu); getchar(); //循环输入学生姓名和成绩 for(int iNUM;i *Num_StuNUM;i) { printf(请输入第%d个学生姓名,i1); scanf(%s,Stu_name[i]); printf(请输入第%d个学生成绩,i1); scanf(%d,Stu_score[i]); putchar(10); } *Num_Stu NUM; printf(录入成功\n\n); } //查看学生信息 void Print_stu(int Num_Stu,char Stu_name[][50],int Stu_score[]) { printf(学生信息如下\n); //循环打印学生信息 for(int i0;i Num_Stu;i) { printf(姓名%s分数%d\n,Stu_name[i],Stu_score[i]); } putchar(10); } //求出成绩最好的学生的成绩 void Best_Stu(int Num_Stu,char Stu_name[][50],int Stu_score[]) { int max_score -1; //定义最大成绩容器 int index -1; //记录学生数组下标 //循环比较学生成绩 for(int i0;iNum_Stu;i) { if(Stu_score[i] max_score) { max_score Stu_score[i]; index i; } } //判断是否有误 if(index ! -1) printf(成绩最高的学生姓名%s分数%d\n,Stu_name[index],Stu_score[index]); else printf(没有学生信息记录\n); putchar(10); } //按姓名升序排序 void Sort_name(int Num_Stu,char Stu_name[][50],int Stu_score[]) { //定义字符数组替换数组 //定义分数替换容器 char tempName[50]; int tempScore; //循环比较并排序 for(int i 0;iNum_Stu-1;i) { for(int j 0;jNum_Stu -i-1;j) { if(strcmp(Stu_name[j],Stu_name[j1]) 0) { //替换姓名位置 strcpy(tempName,Stu_name[j]); strcpy(Stu_name[j],Stu_name[j1]); strcpy(Stu_name[j1],tempName); //替换分数位置 tempScore Stu_score[j]; Stu_score[j] Stu_score[j1]; Stu_score[j1] tempScore; } } } //打印排序后结果 printf(学生按姓名排序后的结果\n); for(int i0;iNum_Stu;i) { printf(姓名%s分数%d\n,Stu_name[i],Stu_score[i]); } putchar(10); } //按成绩对学生升序排序 void Sort_score(int Num_Stu,char Stu_name[][50],int Stu_score[]) { //定义字符数组替换数组 //定义分数替换容器 char tempName[50]; int tempScore; //循环比较并排序 for(int i 0;iNum_Stu-1;i) { for(int j 0;jNum_Stu -i-1;j) { if(Stu_score[j] Stu_score[j1]) { //替换姓名位置 strcpy(tempName,Stu_name[j]); strcpy(Stu_name[j],Stu_name[j1]); strcpy(Stu_name[j1],tempName); //替换分数位置 tempScore Stu_score[j]; Stu_score[j] Stu_score[j1]; Stu_score[j1] tempScore; } } } //打印排序后结果 printf(学生按分数排序后的结果\n); for(int i0;iNum_Stu;i) { printf(姓名%s分数%d\n,Stu_name[i],Stu_score[i]); } putchar(10); }
http://www.zskr.cn/news/1398930.html

相关文章:

  • 基于向量数据库与混合检索的AI智能体持久记忆系统构建
  • 2026中水回用零排放设备企业精选:印染废水中水回用设备厂家盘点 - 栗子测评
  • 如何永久保存微信聊天记录:WeChatMsg完整备份与数据分析实战指南
  • 实战避坑:在泛微ecology9二次开发中,如何安全调用自带附件上传接口(附完整JS代码)
  • 表示秩分析:优化句子嵌入模型性能与稳定性的关键
  • AIFS Single v2.0 vs v1.1:6大核心升级让AI天气预报准确率提升30%
  • 如何永久保存你的微信聊天记录?免费开源工具WeChatMsg完整指南
  • OSEK直接网络管理实战:从Alive报文到逻辑环建立,一个ECU的“入网”全流程解析
  • 别再只调库了!手把手教你为I.MX6ULL写一个DS18B20的Linux字符设备驱动
  • 避坑指南:STM32驱动OV7670带FIFO模块,SPI屏显示图像模糊、帧率低的5个常见问题与解决方法
  • SDSS-V项目:全球最大天文光谱巡天的技术创新与科学目标
  • 别再只调曝光了!海康工业相机MVS软件里这些隐藏设置,才是提升图像质量的关键
  • 别再手动算脉冲了!用STM32HAL库的TIM编码器模式,5分钟搞定AB编码器测速定位
  • 2026年4月有实力的吸塑托盘定制厂家怎么选择,胶盒吸塑/电子吸塑包装/五金吸塑包装/吸塑包装,吸塑托盘厂商哪家靠谱 - 品牌推荐师
  • OpCore-Simplify:零代码黑苹果自动化配置工具完全指南
  • 深度解析RevokeMsgPatcher:Windows平台消息防撤回逆向工程实战指南
  • Simple Live:一站式跨平台直播聚合解决方案,告别多应用切换烦恼
  • Lovable表单生成工具私密配置手册:解锁隐藏API、自定义渲染器注入、服务端Schema动态编译、离线PWA表单缓存策略(仅限内部技术委员会成员参考)
  • yolov11 安卓部署 2025最新
  • 用STM32F407的SDIO给TF卡做个“体检”:读写速度测试与文件系统底层探索(FatFS预备篇)
  • React Native基础
  • 基于SpringBoot + Vue的古典舞在线交流平台设计与实现
  • 别再只盯着Lp范数了:从DiffAttack看对抗攻击如何‘骗过’人眼和模型
  • OpenMind框架实战:如何在华为昇腾NPU上高效运行Open-LLaMA 3B模型
  • ARM Cortex-M WFE指令低功耗机制与应用实践
  • 无人机飞控、平衡小车必看:用欧拉角理解‘翻滚、俯仰、偏航’到底是怎么算出来的
  • 别再只跑官方Demo了!用Nerfstudio处理你自己的照片/视频,从数据准备到3D模型导出一站式指南
  • 保险系统不再冰冷:Lovable体验设计的5个反直觉原则(附2023年头部险企NPS提升22%实证)
  • T3Q-ko-solar-dpo-v1.0-openmind配置参数全攻略:10个调优技巧与最佳实践
  • 保姆级教程:手把手带你拆解ICode Python 3级训练场所有if else练习题