C语言程序设计第9章习题答案2

2018-12-06 21:14

习题9答案

第5题:

#include

void infoinput(struct student* st,int num); void levelcount(struct student* st,int num);

//定义一个结构student表示学生基本情况 struct student{ char stuno[20]; char stuname[20]; double cgrade; char gradelevel; };

int main(){

struct student ss[100]; //根据题意,一个班学生人数不超过100个 int snum=0;

while (snum<=0||snum>100){

printf(\请输入班级的学生数n<=100:\ scanf(\ }

infoinput(ss,snum); levelcount(ss,snum); return 0; }

//输入基本数据

void infoinput(struct student* st,int num){ int i=0; while(i

printf(\请输入学生的学号、姓名、计算机成绩:\ scanf(\ while (st[i].cgrade<0||st[i].cgrade>100){ printf(\请输入学生的计算机成绩[0-100]:\ scanf(\ } if (st[i].cgrade>=90) st[i].gradelevel='A'; else if(st[i].cgrade>=70) st[i].gradelevel='B'; else if(st[i].cgrade>=60) st[i].gradelevel='C';

else st[i].gradelevel='D'; i++; } }

//统计等级人数

void levelcount(struct student* st,int num){ int levelA=0,levelB=0,levelC=0,levelD=0; int i;

for(i=0;i

printf(\统计结果:A:%d人,B:%d人,C:%d人,D:%d人\\n\}

第6题:

#include #include

void finit(); void fcreat(); void fdelete(); void fupdate(); void ffind();

//定义日期

struct date{int year;int month;int day;};

//定义一个结构student表示学生基本情况 struct llist{

char name[20]; struct date birthday; char homeno[10]; char mobileno[20]; };

struct llist addlist[50];

//如果不用链表做,假设:

//通讯录每个位置记录一个联系人信息

//如果某位置联系人姓名信息为空,表示该位置无联系人 int main(){

int menuno=0; while (1){

printf(\请选择操作功能:\\n\ printf(\新建:\\n\ printf(\删除:\\n\ printf(\修改:\\n\ printf(\查询:\\n\ printf(\退出:\\n\ scanf(\ switch(menuno){ case 1:fcreat();break; case 2:fdelete();break; case 3:fupdate();break; case 4:ffind();break; case 5:return 0; default:printf(\错误选项,请重新选择!\\n\

}; }

return 0; }

void finit(){ int i;

for(i=0;i<50;i++) { strcpy(addlist[i].name,\ addlist[i].birthday.year=0; addlist[i].birthday.month=0; addlist[i].birthday.day=0; strcpy(addlist[i].homeno,\ strcpy(addlist[i].mobileno,\ } }

void fcreat(){ int i; char oname[20]; int oyear; int omonth; int oday;

char ohomeno[10]; char omobileno[20]; printf(\请输入联系人信息姓名、出生年、月、日、家庭电话、手机号:\\n\ scanf(\ for(i=0;i<50;i++) { if (strlen(addlist[i].name)==0) { strcpy(addlist[i].name,oname); addlist[i].birthday.year=oyear; addlist[i].birthday.month=omonth; addlist[i].birthday.day=oday; strcpy(addlist[i].homeno,ohomeno); strcpy(addlist[i].mobileno,omobileno); printf(\已增加新联系人\\n\ break; } } if (i>=50) printf(\通讯录满,无法增加新联系人\\n\}

void fdelete(){ int i;

char oname[20]; printf(\请输入联系人姓名:\\n\ scanf(\ for(i=0;i<50;i++) { if (strcmp(addlist[i].name,oname)==0) { strcpy(addlist[i].name,\ addlist[i].birthday.year=0; addlist[i].birthday.month=0; addlist[i].birthday.day=0; strcpy(addlist[i].homeno,\ strcpy(addlist[i].mobileno,\ printf(\已删除该联系人%s\\n\ break; } } if (i>=50) printf(\无该联系人,无法删除\\n\}

void fupdate(){ int i; char oname[20]; char nname[20]; int nyear; int nmonth; int nday;

char nhomeno[10]; char nmobileno[20]; printf(\请输入联系人姓名:\\n\ scanf(\ printf(\请输入联系人信息姓名、出生年、月、日、家庭电话、手机号:\\n\ scanf(\ for(i=0;i<50;i++) { if (strcmp(addlist[i].name,oname)==0) { strcpy(addlist[i].name,nname); addlist[i].birthday.year=nyear; addlist[i].birthday.month=nmonth; addlist[i].birthday.day=nday; strcpy(addlist[i].homeno,nhomeno); strcpy(addlist[i].mobileno,nmobileno); printf(\已修改联系人%s\\n\ break; } } if (i>=50) printf(\无该联系人,无法修改\\n\


C语言程序设计第9章习题答案2.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:好医生——医患沟通学

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: