血型遗传关系c语言编程,根据血型遗传关系,编程实现:○1.输入

满意答案

02ae427d08e371d7e90d5b995e828d6d.png

df4dfw5e56

2017.05.28

02ae427d08e371d7e90d5b995e828d6d.png

采纳率:51%    等级:6

已帮助:106人

//仅作参考

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

#include "string.h"

int studentNum = 0;

#define MAXSTUDENT (1024)

#define CheckData()\

{\

if(!studentNum)\

{\

printf("没有学生数据,按任意键返回……\n");\

getch();\

return;\

}\

}\

typedef struct Student

{

int id;

int cScore;

int mathScore;

}Student;

void ClearStudent(Student* student)

{

memset((void*)student,0,sizeof(*student));

}

void ShowMainMenu()

{

system("cls");

printf("1.增加记录\n2.计算每个学生的总成绩\n3.计算每门课程的平均成绩\n4.按座号查询学生的成绩\n5.按总分排名\n6.输出前n名的学生的成绩\n7.修改成绩\n0.退出\n");

}

void ShowCountScore(const Student* student)

{

system("cls");

CheckData();

for(int i = 0;i < studentNum;i++)

printf("学生%04d的总成绩:%d\n",(student+i)->id,(student+i)->cScore+(student+i)->mathScore);

printf("\n按任意键继续……");

getch();

}

void ShowClassAvg(const Student* student)

{

system("cls");

CheckData();

double sumc = 0;

double summath = 0;

for(int i = 0;i < studentNum;i++)

{

sumc += (student+i)->cScore;

summath += (student+i)->mathScore;

}

printf("C语言平均成绩为:%lf\n",sumc/studentNum);

printf("数学平均成绩为:%lf\n",summath/studentNum);

printf("\n按任意键继续……");

getch();

}

void AddStudent(Student* student)

{

system("cls");

if(studentNum == MAXSTUDENT)

{

printf("人数已满,按任意键返回……\n");

getch();

}

printf("分别录入座号、C语言成绩、数学成绩:\n");

int id = 0;

int cScore = 0;

int mathScore = 0;

scanf("%d%d%d",id,cScore,mathScore);

for(int i = 0 ;i < studentNum;i++)

if((student+i)->id == id)

{

printf("座号重复,按任意键返回……\n");

getch();

return;

}

(student+studentNum)->id = id;

(student+studentNum)->cScore = cScore;

(student+studentNum)->mathScore = mathScore;

studentNum++;

}

void SelectFromID(const Student* student)

{

system("cls");

CheckData();

printf("输入查询ID:\n");

int id = 0;

scanf("%d",id);

printf("查询结果:\n");

for(int i = 0;i

if(id == (student+i)->id)

{

printf("C语言成绩为:%d\n数学成绩为:%d\n",(student+i)->cScore,(student+i)->mathScore);

break;

}

printf("\n按任意键继续……");

getch();

}

void SortForCount(Student* student)

{

system("cls");

CheckData();

for(int i = 0;i < studentNum;i++)

{

for(int j = studentNum -1;j > i;j--)

if(((student+j)->cScore+(student+j)->mathScore) > ((student+j-1)->cScore+(student+j-1)->mathScore))

{

Student stu;

stu = *(student+j);

*(student+j) = *(student+j-1);

*(student+j-1) = stu;

}

}

}

void SortForN(Student* student,int n)

{

SortForCount(student);

if(!studentNum)

return;

n = n>studentNum?studentNum:n;

for(int i = 0;i< n;i++)

printf("第%d名:\nID:%d\nC语言成绩为:%d\n数学成绩为:%d\n总分为:%d\n\n",i+1,(student+i)->id,(student+i)->cScore,(student+i)->mathScore,(student+i)->cScore+(student+i)->mathScore);

printf("\n按任意键继续……");

getch();

}

void UpdateScore(Student* student)

{

system("cls");

CheckData();

printf("输入修改ID:\n");

int id = 0;

scanf("%d",id);

int i = 0;

for(;i

if(id == (student+i)->id)

break;

if(i == studentNum)

printf("\n查无此人,按任意键继续……");

else

{

printf("输入欲修改的C语言成绩、数学成绩:\n");

int cScore = 0;

int mathScore = 0;

scanf("%d%d",cScore,mathScore);

(student+i)->cScore=cScore;

(student+i)->mathScore = mathScore;

printf("\n按任意键继续……");

}

getch();

}

void RunStudent(Student* student)

{

while(1)

{

ShowMainMenu();

char chGet = getch();

switch(chGet)

{

case '1':

AddStudent(student);

break;

case '2':

ShowCountScore(student);

break;

case '3':

ShowClassAvg(student);

break;

case '4':

SelectFromID(student);

break;

case '5':

SortForCount(student);

for(int i =0;i

printf("第%d名:\nID:%d\nC语言成绩为:%d\n数学成绩为:%d\n总分为:%d\n\n",i+1,(student+i)->id,(student+i)->cScore,(student+i)->mathScore,(student+i)->cScore+(student+i)->mathScore);

printf("\n按任意键继续……");

getch();

break;

case '6':

{

int n = 0;

printf("输入N:\n");

scanf("%d",n);

SortForN(student,n);

}

break;

case '7':

UpdateScore(student);

break;

case '0':

return;

default:

break;

}

}

}

int main()

{

Student* allStudent = (Student*)malloc(MAXSTUDENT*sizeof(Student));

memset((void*)allStudent,0,MAXSTUDENT*sizeof(Student));

RunStudent(allStudent);

return 0;

}

02分享举报

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/529472.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux tcb,在Linux中从潜藏密码迁移至tcb怎么做?

潜藏密码作为Linux产品的既定事实标准已经有好多年了&#xff0c;md5密码的运用亦是如此。但是&#xff0c;运用传统的潜藏密码要领也有不足之处&#xff0c;甚至md5也不像以前那么安全了。潜藏密码文件的一个缺点就是&#xff0c;任意一个须要查询个别潜藏密码(如您的密码)的使…

android 通话结束广播,在Android中以编程方式结束通话

侃侃尔雅您无需成为系统应用程序。首先&#xff0c;com.android.internal.telephony在您的项目中创建包&#xff0c;并将其放入名为“ ITelephony.aidl” 的文件中&#xff1a;package com.android.internal.telephony; interface ITelephony { boolean endCall(); vo…

android url 快捷方式,Android向桌面添加快捷方式,使其指向特定的(URL)网页

/** 在桌面添加快捷方式* param icon 快捷方式图标* param name 快捷方式名称* param uri 快捷方式的intent Uri*/public void addShortcut(Parcelable icon, String name, Uri uri){Intent intentAddShortcut new Intent(ACTION_ADD_S…

带nfc 的 android 华为,华为手机NFC功能,原来这么好用,不会用真可惜几千块钱了...

华为手机NFC功能&#xff0c;原来这么好用&#xff0c;不会用真可惜几千块钱了2019-05-06 17:40:259点赞12收藏6评论华为手机在国内也是数一数二的了&#xff0c;那么用华为手机的小伙伴&#xff0c;怎么能错过华为手机中NFC的功能呢&#xff1f;下面就随小编一起来了解一下吧。…

android adb apk包名,ADB命令简单使用--查看包名、activity等

1、连接设备adb connect ip2、查看连接的设备adb devices3、安装/卸载Android 应用adb install packagesnameadb uninstall packagesname4、查看设备安装包名adb shell pm list packages5、查看安装包的路劲adb shell pm path packagename6、包pull到本地adb shell pull 包路径…

小米3升级android 6.0,可升级Android 6.0机型一览 小米手机亮了

前不久&#xff0c;Android M被谷歌正式确定为6.0系统&#xff0c;代号Marshmallow&#xff0c;预计年底前发布。而对于普通用户来说&#xff0c;最关心的就是自己的手机能不能升级。不过别着急&#xff0c;在此之前&#xff0c;我们不妨看看Android 6.0有哪些新功能。一、Andr…

android 開發人員模式,Android

選取月份2021 年 5 月 (9)2021 年 4 月 (11)2021 年 3 月 (7)2021 年 2 月 (7)2021 年 1 月 (7)2020 年 12 月 (10)2020 年 11 月 (8)2020 年 10 月 (8)2020 年 9 月 (6)2020 年 8 月 (7)2020 年 7 月 (12)2020 年 6 月 (10)2020 年 5 月 (14)2020 年 4 月 (10)2…

安装华为鸿蒙,魅族选择与鸿蒙合作,华为这下要成了?

嚯&#xff0c;咱们的魅族可真争气&#xff01;眼看华为6月2日的大新闻箭在弦上蓄势待发&#xff0c;一句“你好&#xff0c;鸿蒙”的问候&#xff0c;瞬间引爆了微博&#xff1a;具体有多热闹&#xff0c;你们瞧瞧这转发和点赞&#xff1a;众所周知&#xff0c;华为鸿蒙自从公…

浏览器兼容性怎么设置HTML,ie10浏览器中兼容性设置在哪里

之前ie浏览器一直被诟病的因素之一就是兼容性&#xff0c;不过ie10浏览器可以对兼容性进行设置&#xff0c;使得在兼容性视图中显示所有网站&#xff0c;具体怎么设置呢。下面由学习啦小编为你整理了ie10浏览器兼容性设置在哪里的解决方法&#xff0c;希望对你有帮助!ie10兼容性…

如何查询高考成绩2021年的成绩排位,2020年高考成绩排名怎么查,高考成绩排名是怎么排的...

一、2020年高考成绩排名怎么查考生查询自己的排名&#xff0c;首先要在本省教育信息网查询自己的高考分数&#xff0c;再查找该分数对应高考年份的一分一段表&#xff0c;在表中可以查到自己的名次&#xff0c;注意不要搞错文理。二、什么是“一分一段表”它显示每一个分数全省…

ksu7对讲机调频软件_科普 | 数字对讲机的群呼功能原理是什么?你了解多少?...

点击上方蓝字关注我们&#xff01;无线对讲机群呼&#xff0c;是为了更好地达到1个数字对讲机能够同一时间跟多个数字对讲机实现语音通话。群呼跟单呼有很多共同之处&#xff0c;下面我们和大家来说说数字对讲机群呼与单呼不同点。当1个数字对讲机处在待机状态的情况下机要发动…

计算机学不学工程制图,大一,马上要考试了,不想再学工程制图了?

买买提烤串累计帮助了195人工科和文科思维方式是不一样的。本人刚好高中理科&#xff0c;大学学文的&#xff0c;而且一专业是中文&#xff0c;二专业管理。大多数工科的特点是靠努力为主的&#xff0c;除了特别难的那种专业&#xff0c;大多数工科的特点是这样的&#xff1a;除…

辅助驾驶等级_双AMR电机位置传感器,助力自动驾驶安全出行

好文章当然要分享啦~如果您喜欢这篇文章&#xff0c;请联系后台添加白名单&#xff0c;欢迎转载哟~在自动驾驶汽车快速发展的今天&#xff0c;汽车电气化趋势逐渐朝着半自动驾驶和全自动驾驶发展&#xff0c;尤其是&#xff0c;为了让电子转向助力(EPS)和电子制动系统满足必要的…

计算机怎么建立共享网络打印机共享,电脑如何连接局域网中的共享打印机—两种方法...

多台电脑而只有一台打印机的时候可以通过连接局域网的方式共享打印机&#xff0c;这样就不需要给每一台电脑都配上打印机了。下面是学习啦小编收集整理的电脑如何连接局域网中的共享打印机—两种方法&#xff0c;希望对大家有帮助~~电脑连接局域网中的共享打印机—两种方法操作…

python判断字符串结尾-字符串#69301_27种Python字符串操作方法大全

1、去空格及特殊符号代码如下:s.strip().lstrip().rstrip(,)2、复制字符串代码如下:#strcpy(sStr1,sStr2)sStr1 strcpysStr2 sStr1sStr1 strcpy2print sStr23、连接字符串代码如下:#strcat(sStr1,sStr2)sStr1 strcatsStr2 appendsStr1 sStr2print sStr14、查找字符代码如…

html5 密码框明文,elementUI的密码框的密文和明文

基于elementui 框架的登录时密码框的明文和密文登录1、templatev-model.trim"ruleForm.password"placeholder"请输入密码":type"passw"clearableblur"onBlur">2、scriptdata(){return{icon: "el-input__icon el-icon-view&quo…

1个显示器分割2画面_我家房子100㎡,原始设计有2个卫生间,纠结保留1个还是2个...

100平米左右的新房装修&#xff0c;设计布局最纠结。尤其是&#xff0c;面积本来就是中等、不大的户型&#xff0c;开发商还给配了2个卫生间。一个主卫&#xff0c;一个客卫。那么问题来了&#xff1a;对于主卧卫生间&#xff0c;我到底是保留还是改成其他的用途&#xff1f;只…

计算机考研数据结构用哪本书,计算机考研数据结构该用哪本参考书?

baoqinshuai新兵答主02-19TA获得超过920个赞一、机械类专业介绍&#xff1a;1、机械设计制造及其自动化机械设计制造及其自动化专业是传统的机械设计制造和先进的自动化技术相结合的产物&#xff0c;是机电一体化的宽口径专业&#xff0c;机械行业是个老行业&#xff0c;人才需…

一个报文的路由器之旅_一个报文的路由器之旅

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------有些报文是不需要进行查表转发的。比如&#xff0c;PFE解析二层帧头时&#xff0c;从二层帧…

计算机管理员受限用户,如何设置权限,使管理员能上网,而受限用户却不能上网?...

可以利用尝试用登录、注销脚本进行&#xff0c;以下方法在Microsoft Virtual PC 2004虚拟机里测试通过。一、适用范围&#xff1a;对等网&#xff0c;采用NAT方式共享Internet连接&#xff0c;且安装Windows XP Professional(Home用户的话&#xff0c;就要另外想办法了)。如果是…