C语言答案删减版_第1页
C语言答案删减版_第2页
C语言答案删减版_第3页
C语言答案删减版_第4页
C语言答案删减版_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 页 共 52 页C 语言答案()第一章 C 语言程序设计基础习题参考答案1-1 冯诺依曼体系结构的基本原理:五大构成部分:输入、输出、CPU、控制器、存储器;程序存储、自动执行、逻辑判断功能;二进制的信息表示。1-6 编辑、编译、链接、执行。1-7 必须有一个主函数,它是程序执行的起点;一个 C 语言程序由函数构成;每一条可执行语句都必须由分号结束;函数的代码段必须由花括号对括住。一个函数中的语句组由声明区和可执行语句区两部分构成。1-8 三个一缩;每遇到一个结构时均缩格,每结束一个结构时回退;缩格格式必须对齐。1-9 试给出以下问题的程序设计过程描述:1) 求两个数中之最大者。#includeint main(void)float fA,fB;clrscr();printf(“Please input two values(fA,fB):“); /*输入要比较的两个数 fA,fB*/scanf(“%f,%f“, /*格式化输入 fA,fB*/if(fA=fB) printf(“the max is %f“,fA);if(fAint main(void)float fA,fB,fC,fMax;printf(“Please input three values(fA,fB,fC):“); /*fA,fB,fC 是输入的 3 个数,fMax 存放最大值*/scanf(“%f,%f,%f“,fMax=fA;/* 假定 fA 最大*/if(fMaxint main(void)int i,nSum;/*声明变量 i,循环的总和*/for(i=1,nSum=0;iint main(void)float a,b;printf(“Please input two real values(a,b):“);scanf(“%f,%f“,printf(“n%f+|%f|=%fn“,a,b,b0?a+b:a-b);/*利用三元条件运算,详见 P52*/return 0;1-13 试编写一个在五个整数中找出最大数的程序。#include第 3 页 共 52 页int main(void)float val_1,val_2,val_3,val_4,val_5,fMax;/*声明要比较的 5 个变量*/printf(“Please input 3 values(val_1,val_2,val_3,val_4,val_5):“);scanf(“%f,%f,%f,%f,%f“,fMax=val_1;/* 假设最大值为 val_1*/if(fMax#include/*包含数学函数文件,详见 P391*/int main(void)double val;printf(“Please input the value:“);scanf(“%f“,printf(“the result is %lf“,cos(val);/*调用数学函数中的 double cos(double x)函数*/return 0;(2) log 90#include#includeint main(void)double val;printf(“Please input the val:“);scanf(“%lf“,printf(“the result is %lfn“,log(val);第 4 页 共 52 页return 0;(3) #include#includeint main(void)double val;printf(“Please input the value(val):“);scanf(“%lf“,printf(“the result is %lfn“,sqrt(val);/*调用 double sqrt(double x)函数*/return 0;(4) #include#includeint main(void)double val;printf(“Please input the value(val):“);scanf(“%lf“,printf(“the result is %lf“,exp(val);/*调用 double exp(double x)函数*/return 0;1-16 见名知义;变量名和函数名小写,符号常量一般大写;多个单词构成标识符名时,一般单词的第一个字母大写,或者用下划线连接;在不影响阅读的情况下,可以使用简单的符号变量名,如 a,b,c,d,x,y,z 等;注意一些容易混淆的字母的使用;匈牙利前缀数据类型表示法的运用及 i,j,k,l,m,n 的整型约定规则。第二章 C 语言中的数据类型及其基本操作习题参考答案2-1 为什么 C 的每个数据都必须属于某种特定的数据类型?解:变量存储空间中的值必须属于某种特定的数据类型才有意义,同时,数据的类型不同,其取值范围、所占存储空间大小、能够参加的运算类型等才有意义。例如:一个 char型数据占用一个字节空间,一个 float 型数据占用 4 个字节空间。另外,作为 C 语言中的数据类型,大部分都可以用 signed, unsigned, long, short 进行修饰,以表示数据的取值范围和数据所占存储空间的字节数变化。2-2 浮点数和定点数的区别在哪里 ?第 5 页 共 52 页解:在于小数点位置是否固定不变。2-3 计算机中的数是精确的表示吗?解:不完全是。对整型数据,在不超出表示值范围时一般是精确表示的。对浮点数,则一般是不能精确表示。原因在于计算机内表示浮点数的存储空间大小是固定的,因此,它所能表示出来的精度是有限的。例如,无限循环小数 3.33333333333333333333333在计算机内部只能近似表示。2-4 为测试数据类型所占存储空间的大小,C 提供了专门的运算符 sizeof(),它用于返回或计算给定数据变量或数据类型所占存储空间的大小。请编写程序能够测试 C 的基本数据类型所占存储空间的大小。解:这里以 int 型为例。其它数据类型所占存储空间大小的测试方法相似。#include void main()int nSize=sizeof(int);printf(“%d“,nSize);getch();2-9 为什么要强调“先声明、后定义、再使用 ”的原则?请阐述其理由。解: 因为变量使用前必须要有存储空间分配给它用来保存其值,对变量存储空间的分配就是通过变量的声明完成的。变量在被引用之前,其中的值应当是确定的某一个值,但变量的声明并不能保证变量存储空间中有一个合适的初始状态值,而是一个随机值。当以错误的初始值开始变量的引用时,会导致程序的执行逻辑错误。为此,一般需要在变量被引用之前赋予其一个合理的初始值。因此,在变量的使用上,一般应当遵循先声明、后定义、在引用的基本原则。2-12 解:(1)ABC DEFGH(2)12+20=32(3)ch1(S)+ch2(x)=203(4)nX=2 nY=5 nZ=12nX=1830 nY=28 nZ=38nX=3 nY=6 nZ=22-13 解:(1)1;(2)0;(3)0;第 6 页 共 52 页(4)0;(5)2,2,5;(6)10;(7)3;(8)12,8,30,20,0,0;(9)15,5,324;2-14 解:m=0 n=0 k=-1m=1 n=1 k=-1m=0 n=0 k=0m=0 n=0 k=1m=1 n=0 k=12-15 解:(1)mnfloat fX;double dY,dZ;printf(“i =%dn“,i);printf(“i =%5dn“,-i);printf(“i =%5on“,i);printf(“i =%5xn,i“);printf(“i =%ldn“,i);fX=dY=333.12345678901234567890;dZ=-555.1234567890123456789e-9;printf(“%fn“,fX);printf(“%fn“,dZ);printf(“%en“,dZ);printf(“%.4fn“,fX);printf(“%.8fn“,dY);printf(“%.3en“,dZ);printf(“%.18fn”,dY);printf(“%10.3en“,dY);printf(“%2.5fn“,dY);printf(“%2en“,dZ);rerturn 0; /*main()函数结束*/第 9 页 共 52 页(分析略) 。3-15 编写一个程序显示如下的方框,椭圆,箭头,或者菱形图* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * int main(void)printf(“*n“);printf(“* *n“);printf(“* *n“);printf(“* *n“);printf(“* *n“);printf(“* *n“);printf(“*n“);return 0; /*其余的照例或者用 for 循环来做*/3-17 int main()int num;int square11;int cube11;for(num=0; num=10; num+)squarenum = num * num;cubenum = num * num * num;printf(“number square cuben“);printf(“-n“);for(num=0; num=10; num+)printf(“%-10d %-10d %-10dn“, num, squarenum, cubenum);return 0;第 10 页 共 52 页第四章 程序设计的算法基础习题参考答案4-1 试分析给出人们日常生活中对问题求解的一般过程和步骤。解:首先:(必须)知道一些已知条件或约束条件;第二,确定或寻找针对该问题的求解方法;第三,根据选择的求解方法确定具体的问题求解步骤;第四,进行问题求解的实际演算和推理活动;最后,得到并整理求解结论。4-2 解:(1)1)睁开双眼; 2)穿好衣服、裤子及鞋子等;3)下床;4)洗漱(包括洗脸、刷牙等) ;5)吃早餐(包括饭后洗碗等工作) ;6)上课学习; 7)吃午餐; 8)午休;9)上课学习;10)吃晚餐;11)课外活动(包括看电视、写作业等等) ;12)洗漱;13)上床;14)脱衣服、裤子及鞋子等;15)睡觉。(2)1)整理好课本;2)从座位上站起来;3)走出教室;4)走进食堂;5)排队;6)判断是否已经轮排到自己,若否,则转 5) ,否则转 7) ;7)刷卡;8)点菜、买饭。(3)1)寻找座位;2)坐下; 3)用筷子夹起饭菜; 4)将饭菜送到嘴里;5)细嚼慢咽;6)判断是否已经吃饱或者饭菜已经吃完,若否,则转 7) ,否则转 8) ;7)重复 3)5)过程;8)整理餐具,从座位上站起;9)端起餐具离开座位;10)寻找水龙头,洗碗;11)带着餐具回寝室;12)到达寝室,放下餐具;13)做个人卫生;14)午睡;4-4 怎么理解 Wirth 提出的程序=算法+数据结构的深刻含义?解:程序是在数据的某种特定表示方法和结构基础上对抽象算法的具体描述,它揭示了面向过程程序设计的本质。将程序设计问题分为算法和数据结构,充分显示了算法在程序设计过程中的重

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论