ImageVerifierCode 换一换
格式:DOC , 页数:28 ,大小:111KB ,
资源ID:2100594      下载积分:5 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-2100594.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言习题及答案第九章.doc)为本站会员(坚持)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

C语言习题及答案第九章.doc

1、9-3 编写程序,使用结构体类型,输出一年十二个月的英文名称及相应天数。解:#include “stdio.h“struct datechar month10 ;int daynumber ;main()int i ;struct date a12=“January“,31,“February“,29,“March“,31,“Aprial“,30,“May“,31,“June“,30,“july“,31,“August“,31,“September“,30,“October“,31,“November“,30,“December“,31 ;for(i=0;i12;i+);printf(“%d

2、月:%s %dn“,i+1,ai.month,ai.daynumber) ;思考:如何对结构体变量进行初始化?对结构体变量的引用为何要体现为分量(或成员)的引用?9-4 编写程序求空间任一点到原点的距离,点用结构体描述。并请考虑求空间中任意两点的距离的程序。解:#include “stdio.h“#include “math.h“struct pointfloat x ;float y ;float z ; main()double d1,d2,d ;struct point p1,p2 ; printf(“请输入第一个点的坐标:“);scanf(“%f,%f,%f“,printf(“请输入第

3、二个点的坐标:“);scanf(“%f,%f,%f“,d1=sqrt(p1.x*p1.x+p1.y*p1.y+p1.z*p1.z);d2=sqrt(p2.x*p2.x+p2.y*p2.y+p2.z*p2.z);d=sqrt(p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y)+(p2.z-p1.z)*(p2.z-p1.z);printf(“第一个点到原点的距离:%fn“,d1);printf(“第二个点到原点的距离:%fn“,d2);printf(“两点间的距离:%fn“,d);9-5 编写输入、输出10个朋友数据的通讯录程序,每个朋友数据包括姓名、地址

4、、邮编、电话、传呼、手机等数据。解:#include “stdio.h“struct AddressBookchar name10 ;char address30 ;char mailnumber7 ;char telphone12 ;char byphone16 ;char movephone1 ;main()int i ;struct AddressBook fd10 ;for(i=0;i10;i+)printf(“请输入第 %d个朋友的信息:n“,i+1);printf(“姓名: “);scanf(“%s“,printf(“地址: “);scanf(“%s“,printf(“邮编: “)

5、;scanf(“%s“,printf(“电话: “);scanf(“%s“, printf(“传呼: “);scanf(“%s“,printf(“手机: “);scanf(“%s“, for(i=0;i10;i+)printf(“n第%d 个朋友的信息:姓名:%sn 地址:%sn 邮编:%sn 电话:%sn 传呼:%sn 手机:%sn“,i+1,fdi.name,fdi.address,fdi.mailnumber,fdi.telphone,fdi.byphone,fdi.movephone) ;思考:结构体类型变量的分量可以是各种基本数据类型(整形、实型、字符型等)或数组类型,是否可以是另一

6、结构体类型?9-6 用一个数组存放图书信息,每本图书包含书名、作者、出版年月、出版社、借出数目、库存数目等信息。编写程序输入若干本图书的信息,按出版年月排序后输出。解:#include “stdio.h“#include “string.h“struct Bookchar booktitle30 ;char author10 ;char publishday10 ;char publishunit22 ;char lendno16 ;char stockno11 ;#define N 100 /假设图书数量不超过110册main()int i,j,k,n;struct Book tsN ,t;

7、printf(“请输入欲处理的图书数量:“);scanf(“%d“,for(i=0;in;i+)printf(“请输入第 %d本书的信息:n“,i+1);printf(“书名: “);scanf(“%s“,printf(“作者: “);scanf(“%s“,printf(“出版年月: “);scanf(“%s“,printf(“出版社: “);scanf(“%s“,printf(“借出数: “);scanf(“%s“,printf(“库存数: “);scanf(“%s“,for(i=0;in-1;i+)k=i;for(j=i+1;jn;j+)if(strcmp(tsk.publishday,t

8、sj.publishday)0) k=j ;t=tsi,tsi=tsj;tsj=t;printf(“n排序后的图书信息:“);for(i=0;in;i+)printf(“n书名: %s, 作者: %s, 出版年月: %s, 出版社:%s, 借出数: %s, 库存数:%sn“,tsi.booktitle,tsi.author,tsi.publishday,tsi.publishunit,tsi.lendno,tsi.stockno) ;思考:在此程序中,tsN是一个什么类型的数组?每个数组的元素大约需占多少字节内存?为什么?9-7 建立一张人员登记表,表中包括人员的姓名、性别、年龄、婚否,如为已

9、婚,还包括爱人的姓名、年龄。将此表输出,假定人数不超过50人。解:#include “stdio.h“#include “string.h“struct registerablechar name10 ;char sex ;int age;char marry ;char wifename10;int wifeage ;#define N 50main()int i,n;struct registerable tsN ;printf(“请输入欲录入人员数量:“) ;scanf(“%d“, for(i=0;in;i+)printf(“请输入第 %d个人的信息:n“,i+1);printf(“姓名

10、: “) ;scanf(“%s“,tsi.name);printf(“性别:“) ;scanf(“%s“,tsi.sex);printf(“年龄:“) ;scanf(“%s“,tsi.age);printf(“婚否 (y/n):“) ;scanf(“%s“,tsi.marry);if(tsi.marry=y|tsi.marry=Y)printf(“妻子姓名: “);scanf(“%s“,printf(“妻子年龄: “);scanf(“%s“,elsetsi.wifename=“ “ ;tsi.wifeage=0 ;printf(“n通信录信息表:“);printf(“n 姓名 性别 年龄 婚否

11、 妻子姓名 妻子年龄n“) ;for(i=0;in;i+)printf(“%8s %c %d %c %8s %dn“,tsi.name,tsi.sex,tsi.age,tsi.marry,tsi.wifename,tsi.wifeage);思考: 结构体类型变量的分量与其对应类型的一般变量的区别是什么?在使用中有何不同?9-8 定义一函数output(),输出学生的成绩数组。成绩数组中有20个学生的数据记录,每个记录包括学号、姓名及三门课的成绩。解:#include “stdio.h“#include “string.h“#define STT struct studentSTTint no

12、;char name8 ;int c3 ;#define N 20output(STT aN)int i;printf(“n学生成绩信息表n“) ;printf(“ 学号 姓名 成绩1 成绩2 成绩 3n“) ;for(i=0;iN;i+)printf(“%6d %8s %3d %3d %3dn“,ai.no,ai.name,ai.c0,ai.c1,ai.c2);void main()int i ;STT csN ;printf(“请输入学生的学号、姓名、成绩:“);for(i=0;iN;i+)printf(“第 %d个人的信息:n“,i+1);printf(“学号: “);scanf(“%d

13、“,printf(“姓名: “);scanf(“%d“,printf(“成绩: “);scanf(“%d,%d,%d“,output(cs) ; 思考:能想象在此程序中与结构体STT等同功能语句吗?如果不用结构体,程序怎样描述?9-9 在上体基础上,定义一个输出函数intput(),用来输入20个学生的数据到成绩数组。解:#include “stdio.h“#include “string.h“#define STT struct studentSTTint no ;char name8 ;int c3 ;#define N 20int i;output(STT aN)printf(“n学生成

14、绩信息表n“) ;printf(“ 学号 姓名 成绩1 成绩2 成绩 3n“) ;for(i=0;iN;i+)printf(“%6d %8s %3d %3d %3dn“,ai.no,ai.name,ai.c0,ai.c1,ai.c2);input(STT aN)printf(“请输入学生的学号、姓名、成绩:“);for(i=0;iN;i+)printf(“第 %d个人的信息:n“,i+1);printf(“学号: “);scanf(“%d“,printf(“姓名: “);scanf(“%d“,printf(“成绩: “);scanf(“%d,%d,%d“,void main()STT csN

15、;input(cs) ;output(cs); 思考:函数的参数可以是结构体类型变量或数组,函数的返回类型也可以是结构体类型吗?9-10 有十个学生,每个学生的数据包括学号、姓名、三门课的成绩,从键盘输入10个学生的数据,要求求出:(1) 每门课的平均成绩。(2) 每个学生的总分及平均成绩。解:#include “stdio.h“#include “string.h“#define STT struct studentSTTint no;char name8 ;int c3;int total;float aver;#define N 10int i ;void output(STT aN)p

16、rintf(“n学生成绩信息表n“) ;printf(“ 学号 姓名 成绩1 成绩2 成绩 3 总分 平均成绩 n“) ;for(i=0;iN;i+)printf(“%6d %8s %3d %3d %3d %3d %6.2f n“,ai.no,ai.name,ai.c0,ai.c1,ai.c2,ai.total ,ai.aver);void input(STT aN)printf(“请输入学生的学号、姓名、成绩:“);for(i=0;iN;i+)printf(“第 %d个人的信息:n“,i+1);printf(“学号: “);scanf(“%d“,printf(“姓名: “);scanf(“%d“,printf(“三门课成绩:“);scanf(“%d,%d,%d“,ai.total=ai.c0+ai.c1+ai.c2;ai.aver=ai.total/N;void main()STT csN,av;input(cs) ;for(i=0;iN;i+)av.c0=av.c0+csi.c0;av.c1=av.c1+csi.c1;av.c2=av.c2+csi.c2;av.aver=av.aver+csi.aver ; output(cs) ;printf(“ %8s %3d %3d %3d

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。