新编C程序设计教程赵忠孝新编C程序设计教程习题集(参考答案).pdf
《新编C程序设计教程赵忠孝新编C程序设计教程习题集(参考答案).pdf》由会员分享,可在线阅读,更多相关《新编C程序设计教程赵忠孝新编C程序设计教程习题集(参考答案).pdf(112页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、新编C 程序设计教程习题集第 1 章 习 题一.选择题1.用高级语言编写的源程序要转换成等价的目标程序,必须经过【】CA)汇编 B)编辑 C)编译 D)解释2.计算机硬件能直接识别和执行的只有【】DA)高级语言 B)符号语言 C)汇编语言 D)机器语言3.在同等情况下,计算机执行【】速度最快。BA)高 级 语 言 程 序 B)机 器 语 言 程 序 C)汇编语言程序 D)源程序4.以下说法错误的是【】CA)高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式B)计算机只能处理由0 和 1 的代码构成的二进制指令或数据O C 语言源程序经过C 语言编译程序编译之后生成一个后缀为.EX
2、E的二进制文件D)每一种高级语言都有它对应的编译程序5.以下叙述中错误的是【】AA)用户所定义的标识符允许使用关键字;B)用户所定义的标识符应尽量做到“见名知意”;C)用户所定义的标识符必须以字母或下划线开头;D)用户定义的标识符中,大、小写字母代表不同标识;6.下列选项中属于合法C 语言关键字的是【】D。A)VAR B)interger C)floaT D)default7.下列字符串不是标识符的是【】DA)sum B)Average C)Day_night D)M.C)JOHN8.正确的C 语言自定义标志符是 】AoA)file_bak B)abc(10)C)continue D)clas
3、s+39.一 个 C 程序的执行是从【】AA)本程序的main函数开始,到 main函数结束;B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束;C)本程序的main函数开始,到本程序文件的最后一个函数结束;D)本程序文件的第一个函数开始,到本程序main函数结束;10.以下叙述中正确的是 】AA)构成C 程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其他函数之前D)所有被调用的函数一定要在调用之前进行定义11.以下叙述不正确的是 】DA)一个C 源程序可由一个或多个函数组成;B)一 C 源程序必须包含一个main函数;C)C 程序的基本组成单位
4、是函数;D)在 C 程序中,注释说明只能位于一条语句的后面;12.以下叙述中正确的是 】CA)用 C 语言实现的算法必须要有输入和输出操作;B)用 C 语言实现的算法可以没有输出但必须要有输入;C)用 C 程序实现的算法可以没有输入但必须要有输出;D)用 C 程序实现的算法可以既没有输入也没有输出;13.以下说法错误的是【】CA)一个算法应包含有限个步骤B)在计算机上实现的算法是用来处理数据对象的C)算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现D)算法的目的是为了求解14.算法是指为解决某个特定问题而采取的确定且有限的步骤,下面不属于算法的五个特性的 是【】BA)有零个输入或多
5、个输入B)高效性C)有穷性D)确定性二.判断题1.一个C 程序的执行总是从该程序的main函数开始,在 main函数最后结束。4 2.main函数必须写在一个C 程序的最前面。【X】3.一个C 程序可以包含若干的函数。Z 4.C 程序的注释部分可以出现在程序的任何位置,它对程序的编译和运行不起任何作用。但是可以增加程序的可读性。【4 J5.C 程序的注释只能是一行。X 6.C 程序的注释不能是中文文字信息。X 7.可以使用Turbo C 来编译和连接一个C 程序。4 8.可以使用Turbo C 来运行一个C 程序。4 9.可以使用Turbo C 来实时调试(即动态调试)一个C 程序。4 三.问
6、答题1.c 语言程序的总体结构是怎样的?答:个完整的C 语言程序,是由一个main()函 数(又称主函数)和若干个其它函数结合构成,或仅由一个main。函数构成。2.c 语言程序的基本单位是什么?它的结构又如何?答:函数是C 语言程序的基本单位,每个源文件可由一个或多个函数组成。C语言的任何函数(包括主函数main。)都是由函数首部和函数体两部分组成。函数的一般结构如下:函数类型函数名(函数参数表)函数首部说明语句部分;执行语句部分;函数体3.主函数main。在程序中的地位如何。程序总是从哪个函数开始执行,到哪个函数执行完后结束?答:一个源程序不论由多少个文件组成,都只能有一个m ain函数,
7、即主函数。main()函数的作用,相当于其它高级语言中的主程序。其它函数的作用,相当于子程序。不论主函数在程序中的位置如何,C语言程序总是从main。函数开始执行,也是在main。函数终止执行。当主函数执行完毕时,整个程序也执行完毕。习惯上,将主函数main。放在程序的最前面。4.什么是算法?算法的基本特征是什么?答:算 法(Algorithm)是为解决某个问题而采取的方法和步骤,是程序的灵魂。个算法应该具有以下五个重要的特征:1.有穷性算法的有穷性是指算法必须能在执行有限个步骤之后终止,不能是无限的。2.确切性算法的每一步骤必须有确切的定义,而不能是含糊的,模棱两可的。3.可行性算法中的所有
8、计算步都可以被分解为有限次的基本运算,即每个计算步都可以在有限时间内完成。4.有0 个或多个输入一个算法有0 个或多个输入,以刻画运算对象的初始情况。所谓0 个输入是指算法本身定出了初始条件。5.有一个或多个输出一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。5.结构化程序设计采用方法是什么?答:结构化程序设计方法的主要原则可以概括为:(1)自顶向下。程序设计时I应先考虑总体,后考虑细节。(2)逐步求精。对复杂问题,应设计一些子目标作为过渡,逐步细化。(3)模块化。一个复杂问题,肯定是由若干个稍简单的问题构成(4)每种程序结构允许有一个入口和一个口。(5)严
9、格控制GOTO语句的使用。6.程序设计的一般那几个步骤?答:程序设计的一般步骤如下:1.分析问题对要解决的问题,苜先必须分析清楚,明确问题的要求,列出所有已知量,找出问题的求解范围、解的精度等。2.建立数学模型对实际问题进行分析之后,找出它的内在规律,就可以建立数学模型。3.选择算法建立数学模型后,还不能着手编程序,必须根据数据结构,选择解决问题的算法。一般选择算法时要注意:(1)算法的逻辑结构尽可能简单。(2)算法所要求的存储量应尽可能少。(3)避免不必要的循环,减少算法的执行时间。(4)在满足问题要求条件下,使所需的计算量最小。4.编写程序把整个程序看作一个整体,先全局后局部,自顶向下,层
10、一层分解处理。如果某些子问题的算法相同,而仅仅是参数不同,可以用函数来表示。5.调试运行准备多组试验数据,调试运行。对程序中的错误进行修改,使程序能运行出结果。6.分析结果对试验数据计算的结果进行分析,看是否正确。如果不正确,返回修改程序,再调试运行。7.写出程序的文档主要是对程序中的变量、函数或过程作必要的说明。解释编程思路,画出框图,讨论运行结果等。7,执行一个c 语言程序的般过程是什么?答:一个简单C程序的上机执行过程如下图所示。1)启动T c,进入Tc集成环境。2)编辑(或修改)源程序。3)编译。如果编译成功,则可进行下一步操作;否则,返回2)修改源程序,再重新编译,直至编译成功。4)
11、连接。如果连接成功,则可进行下一步操作;否则,根据系统的错误提示进行相应修改,再重新连接,直至连接成功。5)运行。通过观察程序运行结果,验证程序的正确性。6)退出T c集成环境,结束本次程序运行。图C程序的上机执行过程第 2 章 习 题一.选择题1 .不合法的字符常量是 】B。A)(f B)B C)a 2 .合法的字符常量是【】D 。A)0 8 4 B)8 4 C)a b D),x 3 2 1D)x 4 A 3 .C语言提供的合法的数据类型关键字是1 】唯。A)F l o a t B)s i g n e d C)i n t e g e r D)c h a r a4 .属于合法的C语言长整型常量
12、的是【】B oA)2 7 3 6 B)0 L C)2 E 1 0 D)(l o n g)5 8 7 6 2 7 35 .下面选项中,不是合法整型常量的是【】B。A)1 6 0 B)-O x c d g C)-0 1 D)-0 x 4 8 a6 .以下所列的C语言常量中,错误的是【】B 。A)O x F F B)1.2 e 0.5 C)2 L D)7 2 7 .下面四个选项中,均是不正确的8进制数或1 6进制数的选项是1 】D 。A)0 1 6 0 x 8 f 0 1 8 B)O a b c 0 1 7 O x aC)0 1 0 -0 x 1 1 0 x 1 6 D)0 a l 2 7 f f
13、-1 2 38 .下选项中不属于C语言的类型是【】D。A)s i g n e d s h o r t i n t B)u n s i g n e d l o n g i n tB)u n s i g n e d i n t D)l o n g s h o r t9 .判 断i n t x =O x a f f b l x的结果是【】B 。A)赋值非法 B)溢出 C)为a ffb D)为ffbc1 0 .下面选项中,是合法浮点数的是【】B。A)+l e O.5 B)6 0 C)1 2 3 e D)-e 31 1.在C语言中,要求参加运算的数必须是整数的运算符是 】C 。A)/B)*0%D)=1
14、2.在C语言中,字符型数据在内存中存放形式是【1D。A)原码 B)B C D码 C)反码 D)A S C I I码1 3 .下列语句中,不符合语法的赋值语句是【】A。A)a=7+b+c=a+7;B)a=7+b+;C)a=(7+b,b+,a+7);D)a=7+b,c=a+7;1 4 .下面非法的C语言转义字符是 】B A)b B)Oxf C)0 3 7 D)1 5 .有字符串如下,n 4 0 7 a sl xa bc,则字符串的长度为【】DA)6B)7 C)8 D)91 6 .对于语句:f=(3.0 于.0,5.0),(2.0,1.0,0.0);的判断中,正确的是 】B。A)语法错误 B)f 为
15、 5.0 C)f 为 0.01 7 .与代数式与 不等价的C语言表达式是【uvA)x*y/u*v B)x*y/u/v C)x*y/(u*v)1 8.在 C语言中,数字0 2 9是一个【】D oA)八进制数 B)十 六 进 制 数 C)十进制数D)f 为 2.0A。D)x/(u*v)*yD)非法数1 9.C语言中整数-8在内存中的存储形式为【】A。A)1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0B)1 0 0 0 0 0 0 0 0 0 0 1 0 0 0C)0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0)1 1 1 1 1 1 1 1 1 1 1 1 0 1
16、1 12 0 .对于ch a r cx=0 3 9;语句,正确的是 】A 。A)不合法 B)cx的 A S C H 值是3 3C)cx的值为四个字符 D)cx的值为三个字符2 1 .在 C语言中,不正确的sh o r t类 型 的 常 数 是【】B。A)1 2 3 B)3 2 7 6 8 C)0 3 7 D)OxA F2 2 .若 i n t k=7,x=1 2;则能使值为3的表达式是 】D oA)x%=(k?仁 5)B)x%=(k-k%5)C)x%=k -k%5 D)(x%=k)-(k%=5)2 3 .假定x 和 y为 d o ubl e 型,则表达式x=2,y=x+3/2 的值是【】D。A
17、)3.5 0 0 0 0 0 B)3 C)2.0 0 0 0 0 0 D)3.0 0 0 0 0 02 4 .设以下变量均为i n t类型,则值不等于7的表达式是 】C。A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+1)C)(x=6,x+1,y=6,x+y)D)(y=6,y+1,x=y,x+1)2 5 .在 1 6 位 C编译系统上,若定义l o n g a;,则能给a赋 4 0 0 0 0 的正确语句是【】D。A)a=2 0 0 0 0+2 0 0 0 0,B)a=4 0 0 0*1 0。C)3 0 0 0 0+1 0 0 0 0=D)a=4 0 0 0 L*1 0 L o
18、2 6 .7/9*9在 C语言中的计算结果是 】C。A)1 B)7 C)0 D)以上都不是2 7 .以下能正确定义且赋初值的语句是【】BA)i n t n l=n 2=1 0;B)ch a r c=3 2;C)fl o a t f=f+l.1;D)d o ubl e x=1 2.3 E 2.5;2 8.若有定义:i n t a=7;fl o a t x=2.5,y=4.7;则表达式 x+a%3*(i n t)(x+y)/2/4 的值是【AA)2.500000 B)2.750000 C)3.500000 D)0.00000029.若有运算符 ,sizeof,则它们按优先级由高至低的正确排列次序是
19、【】BA)sizeof,&=,B)sizeof,&=C),sizeof,&=D)&=,sizeof30.设变量a 是 int型,f 是 float型,i 是 double型,则表达式10+a+i*f值的数据类型为【】CA)int B)float C)double D)不确定二.填空题1.在 C 语言中(以16位 PC机为例),一个char数据在内存中所占字节数为【1】,其数值范围为【0】一【255一个int数据在内存中所占字节数为【2】,其数值范围为32768 3 2 7 6 7 一 个 long数据在内存中所占字节数为【4】,其数值范围为1-214783648 2 1 4 7 8 3 6 4
20、 7】。一个float数据在内存中所占字节数为【4】,其数值范围为1-3.4X10 3.4X10382.C 语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为【字母或下划线】。3.字符常量使用-对【单引号】界定单个字符,而字符串常量使用-对【双引号】来界定若干个字符的序列。4.在 C 语言中,不同运算符之间运算次序存在【优先级】的区别,同一运算符之间运算次序存 在【结合 性】的规则。5.设 x,i,j,k都 是 int型变量,表达式x=(i=4,j=16,k=32)计算后,x 的值为 32。6.设*=2.5国 7,尸4.7,则*+2船*011。&+丫)2/4为【2 6
21、7.设 a=2,b=3,x=3.5,y=2.5,则表达式(float)(a+b)/2+(int)x%(int)y 的值为【3.5】。8.数学式子,+J(2x+3y)的 c 语言表达式为【exp(3)+sqrt(2*x+3*y)I+山9.数学式子 3 x 的 C 语言表达式为【abs(x-y)+(x+y)/(3*x)】。-4ac10.数学式子 2a 的 C 语言表达式为【(-b+sqrt(b*b-4*a*c)/(2*a)。11.已知:char a=a,b=b,c=c,i;则表达式 i=a+b+c 的值为【294】。12.已知 int a=12,n=5;则:a+=a;a-=2;a*=2+3;a/=
22、a+a;n%=(n%=2);a+=a-=a*=a;表达式运算后a 的值各为【0 13.设 int a;float f;double i ;则表达式10+a+i*f值的数据类型是【d o u b l e 工14.若 a 为 int型变量,则 表 达 式(a=4*5,a*2),a+6的值为【4 0】。15.假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为【9】。16.已知a,b,c 是一个十进制数上的百位,十位,个位,则计算谋a,b,c 数的表达式是【a=x/100,b=(x-x/100*100)/10,c=x%101 7 .定义:d o ubl e x=3.5,y=3.
23、2;则表达式(i n t)x*O.5的值是【1.5,表达式y+=x+的值是【6.7】。1 8.定义:i n t m=5,n=3;则表达式m/=n+4 的值是【0,表达式m=(m=l,n=2,n-m)的值是1,表达式m+=m-=(m=l)*(n=2)的值是【-21 9.表 达 式 5%(-3)的值是2表达式-5%(-3)的值是【-22 0 .若 a是 i n t变量,则执行表达式a=2 5/3%3 后,a的值是 2 三.判断题1 .在 C程序中对用到的所有数据都必须指定其数据类型。J 2 .一个变量在内存中占据一定的存储单元。J 3 .一个实型变量的值肯定是精确的。X 4 .对几个变量在定义时赋
24、初值可以写成:i n t a=b=c=3;【X】5.自增运算符(+)或自减运算符(一)只能用于变量,不能用于常量或表达式。【J 16.在 C程序的表达式中,为了明确表达式的运算次序,常使用括号“()。J 7 .%运算符要求运算数必须是整数。V 8 .若 a是实型变量,C程序中允许赋值a=1 0,因此实型变量中允许存放整型数。X 9 .在 C程序中,逗号运算符的优先级最低。J 1 0 .C语言不允许混合类型数据间进行运算。X 四.简答题1 .为什么C语言的字符型可以进行数值运算?答:C语言将字符(c h a r a c t e r)以其A S C II码的值进行存储和处理,因此可以参加数值运算。
25、2 .简 述 a 和“a”的区别。答:字符常量由单引号括起来,字符串常量由双引号括起来。例如:a 和 a 是不同的。a 是字符常量,占一个字节;a 是字符串常量,占2个字节。3 .程序:i n t m=1 2;m=1 5;为什么整型变量m的值在运算后不是当初的1 2,而 是 1 5?答:i n t m=1 2;是在定义变量时进行初始化,m=1 5;是程序运行时对变量重新赋值,原来的值也就随之改变。4.将下面各数用八进制和十六进制数表示:5.华氏温度F与摄氏温度c的转换公式为:c=(F-3 2)*5/9 ,则 f l o a t c,F;c=5/9*(F-3 2)是其对应的C语言表达式吗?如果不
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新编 程序设计 教程 忠孝 习题集 参考答案
限制150内