案例描述

体侧所含项目与每项所占比例如下表所示:

单项指标 权重
体重指数(BMI) 15
肺活量 15
50米 20
坐位体前屈 10
立定跳远 10
引体向上(男)/仰卧起坐(女) 10
1000米(男)/800米(女) 20

这个博客上插入表格实在是太诡异了。我输入了好几遍
体育成绩评分细则如下表:

优秀 95~100
良好 80~94
及格 60~79
不及格 <60

各项指标评分细则如下:

嗯大概就是这个亚子
代码如下:

#include <stdlib.h>
#include <stdio.h>
#include <Windows.h>int sex = 0;   //全局变量,性别由外传入,当计算总成绩时可以避免出现多次性别的出现//体重指数
int countBMI(int sex)
{float weight, height;printf("请依次输入体重(kg),身高(m):");scanf("%f%f",&weight,&height);float BMI = weight / (height * height) ;int sco = 0;switch (sex){case 0 ://男生if (BMI > 17.9 || BMI < 23.9)sco = 100;else if(BMI <= 17.9 || (BMI > 24 && BMI <27.9))sco = 80;elsesco = 60;break;case 1 ://女生if (BMI > 17.2 || BMI < 23.9)sco = 100;else if(BMI <= 17.1 || (BMI > 24 && BMI <27.9))sco = 80;elsesco = 60;break;default:sco = 0;}printf ("体重指数为:%.2f,成绩为:%d\n",BMI,sco);return sco;}//肺活量
int countFVC(int sex)
{int FVC,sco;printf("请输入肺活量(ml):");scanf("%d",&FVC);switch(sex){case 0:if (FVC > 4800)sco = 100;else if(FVC  <= 4800 || FVC  > 4180 )sco = 80;else if(FVC  <= 4180 || FVC  > 3100 )sco = 60;elsesco = 30;break;case 1:if (FVC  > 3400)sco = 100;else if(FVC  <= 3400 || FVC  > 3000)sco = 80;else if(FVC  <= 3000 || FVC  > 2050)sco = 60;elsesco = 30;break;default:sco = 0;}printf ("成绩为:%d\n",sco);return sco;}//引体向上
int countChinups()
{if (sex = 1){printf("引体向上为男生特有项目!!\n");Sleep(2000);exit(0);}int ups = 0,sco = 0;printf ("引体向上计数为:");scanf("%d",&ups);if (ups > 19)sco = 100;else if(ups  <= 19 || ups  > 15 )sco = 80;else if(ups  <= 15 || ups  > 10 )sco = 60;elsesco = 30;return sco;
}//仰卧起坐
int countSitup()
{if (sex = 0){printf("引体向上为女生特有项目!!\n");Sleep(2000);exit(0);}int ups = 0,sco = 0;printf ("仰卧起坐计数为:");scanf("%d",&ups);if (ups > 56)sco = 100;else if(ups  <= 56 || ups  > 52 )sco = 80;else if(ups  <= 52 || ups  > 26 )sco = 60;elsesco = 30;printf ("成绩为:%d\n",sco );return sco;
}//总成绩
int getNum()
{int BMI,FVC,Cups,Sups;double num ;//获取每项成绩BMI = countBMI (sex);FVC = countFVC (sex);//计算成绩if (sex == 0){Cups = countChinups() ;    //若是男生则获得引体向上的个数num = BMI * 0.25 + FVC * 0.35 + Cups * 0.4;}else{Sups = countSitup() ;    //若是女生则获得仰卧起坐的个数num = BMI * 0.25 + FVC * 0.35 + Sups * 0.4;}//判断成绩优劣if (num  > 95)printf("综合成绩为%.2f,优秀!!",num);else if (num > 80 && num <= 95)printf("综合成绩为%.2f,良好!!",num);else if (num > 60 && num <= 80)printf("综合成绩为%.2f,及格!!",num);else  printf("综合成绩为%.2f,不及格!!",num);return num;
}//菜单
int menu()
{int sec;printf("功能菜单\n");printf("=================\n");printf("1.体重指数BMI\n");printf("2.肺活量\n");printf("3.引体向上\n");printf("4.仰卧起坐\n");printf("5.总成绩\n");printf("6.退出\n");printf("=================\n");printf("请输入性别:");scanf ("%d",&sex);while (sex != 0 && sex != 1){printf("选择有误!\n\请重新输入!!");scanf ("%d",&sex);}printf("请输入要选择的功能!!");scanf ("%d",&sec);while (sec > 5 || sec < 0 ){printf("选择有误!\n\请重新输入!!");scanf ("%d",&sec);}return sec;
}int main()
{int sec = menu();switch(sec ){case 0:exit(0);break;case 1:countBMI(sex);break;case 2:countFVC(sex);break;case 3:countChinups();break;case 4:countSitup();break;case 5:getNum ();break;default:break;}system ("pause");return 0;
}

运行结果如下:



好长,好累啊,接下来要进入数组章节了!加下来的几个案例理论上都比较轻松!冲鸭!

【C语言】案例二十九 综合案例——体育成绩管理系统相关推荐

  1. C语言试题二十九之编写函数int function(int lim,int aa[max])求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求的素数的个数。

    1. 题目 编写函数int function(int lim,int aa[max]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求的素数的个数. 2 .温馨提示 C语 ...

  2. OpenCV C++案例实战二十九《遥感图像分割》

    OpenCV C++案例实战二十九<遥感图像分割> 前言 一.准备数据 二.K-Means分类 三.效果显示 四.源码 总结 前言 本案例基于k-means机器学习算法进行遥感图像分割.主 ...

  3. OpenCV C++案例实战十九《制作电子相册查看器》

    OpenCV C++案例实战十九<制作电子相册查看器> 前言 一.图片读取 二.图片展示 三.键盘控制 四.效果显示 五.源码 总结 前言 本文将使用OpenCV C++ 制作电子相册查看 ...

  4. “COMSOL Multiphysics多物理场仿真技术与应用”光电专题(二十九期)

    (一) 案列应用实操教学: 案例一 光子晶体能带分析.能谱计算.光纤模态计算.微腔腔膜求解 案例二 类比凝聚态领域魔角石墨烯的moiré 光子晶体建模以及物理分析 案例三 传播表面等离激元和表面等离激 ...

  5. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验二十九:LCD模块

    实验二十九:LCD模块 据说Alinx 301支持 7"TFT,好奇的朋友一定疑惑道,它们3.2"TFT以及7"TFT等两者之间究竟有何区别呢?答案很简单,前者自带控制器 ...

  6. SAP UI5 应用开发教程之二十九 - SAP UI5 的路由和导航功能介绍试读版

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...

  7. C++语言学习(十九)——C++类型识别

    C++语言学习(十九)--C++类型识别 一.C++类型识别简介 1.C++类型识别简介 C++是静态类型语言,其数据类型是在编译期就确定的,不能在运行时更改. C++语言中,静态类型是对象自身的类型 ...

  8. C/C++基础讲解(二十九)之数值计算与趣味数学篇(百钱百鸡问题、爱因斯坦的数学题、三色球问题与马克思手稿中的数学题)

    C/C++基础讲解(二十九)之数值计算与趣味数学篇(百钱百鸡问题.爱因斯坦的数学题.三色球问题与马克思手稿中的数学题) 程序之美 前言 很多时候,特别是刚步入大学的学子们,对于刚刚开展的计算机课程基本 ...

  9. 美学心得(第二百二十九集)罗国正

    美学心得(第二百二十九集) 罗国正 (2021年10月) 2999.清朝鉴赏家陆时化,字润之,号听松,是江苏太仓人.他的美学思想,非常值得大家关注.研究.现将他的观点摘要如下: 1.他强调先天文化之根 ...

最新文章

  1. python知识点:文件读写以及其他基础知识点
  2. 【盘点】北美顶尖学府的人工智能与智能车实验室
  3. Office365 Exchange Hybrid No.15 DNS切换及邮件传输排错
  4. python开发安卓程序-如何使用python开发android应用
  5. fastjson 对象和json互转
  6. linux 的ip 设置lo_linux网络虚拟化: network namespace 简介及实验
  7. shell基础——变量定义
  8. 95-190-540-源码-window-清除器(Evictors)-简介
  9. TIME_WAIT太多解决思路和方法
  10. python数据库增删改查_python对数据库mysql的操作(增删改查)
  11. 施耐德 m340 编程手册_施耐德PLC漏洞历险记
  12. Linux格式化为物理卷,使用linux的pvs命令格式化输出物理卷信息报表
  13. 伪静态化不正常,电脑打不开贴子,手机可以
  14. 从人体3D建模和测量入手,云之梦要用虚拟试衣解放量体师和服装导购员
  15. 十张图看懂华为IPD和LTC
  16. jsessionid和jwt_jsessionid
  17. c语言音乐程序天空之城,51单片机演奏天空之城 c语言源程序
  18. Cesium 编辑空间测量功能,任意修改
  19. UI设计的APP标准规范
  20. 优美的数列(斐波那契数列)

热门文章

  1. android 设备序列号_如何查找您的Android设备的序列号
  2. 如何解决‘CommandNotFoundError: Your shell has not been properly configured to use ‘conda activate’错误
  3. 你好,再见;你好,幸会!
  4. 石墨文档链接不到服务器,石墨文档怎么打开链接
  5. 华为TechWave峰会上主推的分布式云到底什么来头?
  6. echarts的中国地图,点击进入省级地图,按需加载对应的省js,可返回中国地图
  7. [架构之路-50]:目标系统 - 系统软件 - Linux下的网络通信-8-PON、EPON、GPON
  8. 蜗牛星际C单下实现黑群的局域网唤醒
  9. JS第二次授课及字节跳动2017秋招前端工程师笔试试卷涉及知识点
  10. html 数字变成图片,从100到1000数字表图片