




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章 习题解答 第1章 1.C 语言程序主要由预处理命令、函数、注释等组成。 2.填空 (1)分号 (2)main (3)stdio.h 3. 源程序: #include main( ) printf(“*n”); printf(“Hello World!n”); printf(“*”); 4. 源程序: #include main( ) int a, b, c; /* 定义变量 */ scanf(“%d”, &a); /* 输入第一个整数 */ scanf(“%d”, &b); /* 输入第二个整数 */ c=a-b; /* 计算差 */ printf(“%d-%d=%d”,a,b,c); /* 输出结果 */ 5. (1) (2)x=10; (3)printf(“s=%dn”,s); 第2章 1. (1) c (2) a (3) b g (4) a d e (5) d 2. a. 5 b. 295 c. 4 d. 29 e. 9 3. a.x=4,y=6 b. x=4,y=3 f.x=3,y=6 4. 16 5. #include main() int a,b,c; scanf(%d%d,&a,&b); c=a*b; printf(%d*%d=%d,a,b,c); 第3章 1. (1) b (2) b (3) d (4) a (5) b 2. (1)&a,&b (2)l,s 3. printf(“x=%.2f,y=%.2fn”,x,y); 4. #include main() int num1,num2,num3,sum; float average; scanf(%d%d%d,&num1,&num2,&num3); sum=num1+num2+num3; average=sum/3.0; printf(sum=%d,average=%.2fn,sum,average); 5. #include main() int hour,minute,second,total; /* 定义变量代表时、分、秒和总秒数 */ scanf(%d,&total); hour=total/3600; minute=total%3600/60; second=total%3600%60; printf(%dhours:%dminutes:%dsecondsn,hour,minute,second); 第4章 1. (1) a (2) b (3) b (4) b (5) b 2. 0 3. (1) 6 (2) 4 (3) 1 (4) 1 4. #include main( ) int x,y; scanf(%d,&x); if (x-5 & x0 & x10) y=2*x+1; printf(x=%d,y=%dn,x,y); 5. #include main( ) int score,rank; /* score 表示成绩,rank 表示级别 */ printf(Please input score:); scanf(%d,&score); rank=score/10; switch(rank) case 10: case 9: printf(成绩等级为:An); break; case 8: printf(成绩等级为:Bn); break; case 7: printf(成绩等级为:Cn); break; case 6: printf(成绩等级为:Dn); break; default:printf(成绩等级为:En); break; 6. #include void main() int n; printf(Please input the digit:); scanf(%d,&n); switch(n) case 1:printf(Jan n);break; case 2:printf(Feb n);break; case 3:printf(Mar n);break; case 4:printf(Apr n);break; case 5:printf(May n);break; case 6:printf(Jun n);break; case 7:printf(Jul n);break; case 8:printf(Agu n);break; case 9:printf(Sep n);break; case 10:printf(Oct n);break; case 11:printf(Nov n);break; case 12:printf(Dec n);break; 第5章 1. (1) b (2) a (3) b (4) d (5) d 2. 7,1 3. y=-1 4. m=6 5. 10,14 6. 3 7. 5 8. ABABCDCD 9. # include main ( ) int i; long int sum=0; for (i=2;i=200;i+=2) sum+=i; printf(2+4+6+.+200=%ld,sum); 10. #include main() long int n; int sum = 0; printf(Please input the nber:); scanf(%ld,&n); while(n != 0) sum += n % 10; n /= 10; printf(%dn, sum); 第6章 1. (1) d (2) b (3) d (4) c (5) a 2. 11 3. 3 4. 5689 5. 12,6 6. (1) i- (2) n 7. (1) char k; (2) ij 8. #include main( ) float a10; int i; float sum=0,average; for (i=0;i10;i+) printf(a%d=?,i); scanf(%f,&ai); sum+=ai; average=sum/10; printf(average is %.2fn,average); 9. #include #define N 10 main( ) int aN,i,target,found; for (i=0;iN;i+) scanf(%d,&ai); printf(Please input a number:); scanf(%d,&target); i=0; while(iN & target != ai) i+; found = iN?i:-1; printf(%dn,found); 10. #include #define N 80 main( ) char strN; int len=0,i=0; printf(Please input a string:); gets(str); while (stri+ != 0) len+; printf(the length of string is %d.n,len); 第7章 1. 21 2. 136 3. 16 4. (1) func (2) m+ 5. 9 6. 1,6,3,2,3 7. 2,5,1,2,3,-2 8. #include int fun(int a,int b,int c); main( ) int a,b,c,max; printf(Please input three numbers:); scanf(%d%d%d,&a,&b,&c); max=fun(a,b,c); printf(Max is %d.n,max); int fun(int a,int b,int c) int max; max= ab?(ac?a:c):(bc?b:c); return max; 9. #include long int sum(int n); main( ) int n; printf(n=?); scanf(%d,&n); printf(Sum=%ld.n,sum(n); long int sum(int n) if (n = = 1 ) return 1; else return sum(n-1)+n; 10. #include void fun(n); main( ) int n; printf(n=?); scanf(%d,&n); fun(n); void fun(n) if (n = = 0) return; else fun(n/2); printf(%-2d,n%2); 第8章 1. (1) b (2) d (3) b (4) c (5) c 2. 8 3. 123456789 4. 2 3 4 5 6 5. 345 6. 1 2 3 4 5 6 7. bi 8. bcdefgha 9. p=sum 10. #include #include main() char str80; char *p1, *p2; gets(str); p1=str; p2=str+strlen(str)-1; while (p1p2 & *p1+ = *p2- ) ; puts( p1p2 ? 不是回文 : 是回文 ); 第9章 1. a. #define F(x) (x)*(x)*(x) b. #define F(x) (x)%4 c. #define F(x,y) (x)*(y)100?1:0 2. a. 4 b. 4 c. #define DOUBLE(x) 2*(x) 3. d 4. -20 5. N is undefined 6. 7.5 7. y=6 8. #include #define SWAP(a,b) int temp;temp=a;a=b;b=temp; main() int x,y; printf(x=?); scanf(%d,&x); printf(y=?); scanf(%d,&y); SWAP(x,y) printf(x=%d,y=%d.n,x,y); 第10章 1. struct student int sno; char sname10; char sex; stu1,stu2; 2. 12 3. 合法的有a,b,d c.改成 s.u.rectangle.length=25; e.改成 s.u.circle.radius=5; f.改成 s.u.circle.radius=5; 4. a,b,c,d (说明:变量 b 有确定的值之后,b+是合法的。) 5. 改为 typedef struct product char name10; float price; PRODUCT; PRODUCT products10; 6. (1) struct employee (2) printemp(emp) 7. 2 4 3 9 8 8. #include struct time_struct int hour; int minute; int second; ; main( ) struct time_struct time; printf(Input time?n(Example 18:28:38)n); scanf(%d:%d:%d,&time.hour,&time.minute,&time.second); printf(Time is %d:%d:%dn,time.hour,time.minute,time.second); 9. #include struct time_struct int hour; int minute; int second; time; void enter_time(); void display_time(); main( ) enter_time(); display_time(); void enter_time() printf(Enter the time(example 18:28:38)?); scanf(%d:%d:%d,&time.hour,&time.minute,&time.second); void display_time() printf(Time is %d:%d:%d.n,time.hour,time.minute,time.second); 10. #include #define N 3 struct hotel char name31; /*旅馆名称*/ char address31;/*旅馆地址*/ int grade; /*旅馆级别*/ float average_charge; /*平均房价*/ int number; /*房间数量*/ hN= h1,上海路,5,500.00,80, h2,北京大街,5,480.00,70, h3,南京大街,3,300.50,100 ; main( ) int grade,i; printf(请输入级别(3-5)?); scanf(%d,&grade); for (i=0;iN;i+) if (hi.grade=grade) printf(名称:%sn 地址:%sn 级别:%dn平均房价%.2fn 房间数量:%dn, ,hi.address,hi.grade,hi.average_charge,hi.number); 第11章 1. (1) c (2) d (3) b (4) b (5) b 2. Basican 3. fgetc(fp) 4. “record.dat”, “w” 5. #include #include #include typedef struct Employee int id; char name20; char gender20; int age; char address20; Employee; int main(void) FILE *fp; char another,choice; Employee emp; long int recsize; fp=fopen(employee.dat,rb+); if(fp=NULL) fp=fopen( employee.dat,wb+); if(fp=NULL) printf(Cant Open File); exit(0); recsize=sizeof(emp); while(1) printf(1.添加记录 2.显示男员工 3.退出n); printf(Enter your choice(1-3):); fflush(stdin); scanf(%c,&choice); switch(choice) case1: fseek(fp,0,SEEK_END); another=Y; while(another=Y| another=y) printf(输入信息(id 姓名 性别 年龄 住址):n); scanf(%d %s %s %d %s,&emp.id,&,&emp.gender,&emp.age,&emp.address); fwrite(&emp,recsize,1,fp); printf(是否继续 (Y/N): ); fflush(stdin); another=getchar(); break; case 2: printf(学号t 姓名t性别t 年龄t住址n); rewind(fp); while(fread(&emp,recsize,1,fp)=1) if (strcmp(emp.gender,男)=0) printf(%dt%st%st%dt%sn, emp.id,,emp.gender,emp.age,emp.address); break; case 3: fclose(fp); exit(0); 6. #includestdio.h #includestdlib.h #define M 2 #define stu struct student stu int num; char name20; float s1; float s2; float s3; float avg; ; main() stu stM; FILE *fp; int i; printf(请输入 5 名同学生的成绩,按照学号,姓名,成绩 1,成绩2,成绩 3 的顺序,中间用空格隔开:n); fo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年呼吸内科呼吸系统疾病筛查考试答案及解析
- 民族团结创建课件
- 2025年皮肤科疾病诊断与治疗学习问答答案及解析
- 2025年康复理疗技术操作评估答案及解析
- 民族内涵课件
- 2025年肿瘤科学病理解读讨论答案及解析
- 2025年麻醉学临床技能操作模拟考试答案及解析
- 2025年消化内科病例分析训练总结卷答案及解析
- 2025年危重病房监护常规操作考核答案及解析
- 变间隙密封液压缸:间隙精准测量与唇边疲劳寿命的深度剖析
- (完整word版)HND商务文化与策略
- 大学生创新创业(微课版第3版)课件 第1、2章 了解创业规划你的职业生涯、创新与创新思维
- 卡培他滨诱导手足综合征大鼠模型的建立及评价
- 电动托盘车(搬运车)培训-课件
- 14K118 空调通风管道的加固
- 安庆飞凯新材料有限公司6000吨-年光固化树脂及表面处理涂料项目环境影响报告书
- 月子会所运营方案
- 排污单位自行监测方案编制模板
- 工作安全分析JSA杜邦
- YY 1727-2020口腔黏膜渗出液人类免疫缺陷病毒抗体检测试剂盒(胶体金免疫层析法)
- 粘膜免疫系统概述
评论
0/150
提交评论