最新C语言知识辅导练习题及答案
C语言的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。下面是小编为大家搜索整理的C语言专项训练题,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试 网!
一、选择题
(1)以下叙述正确的是
A)循环结构、选择结构、顺序结构都是结构化程序的基本结构
B)计算机可以直接执行C语言程序,不需要做任何转换
C)过于复杂的算法不能使用N—s流程图描述
D)只有不超过20步操作步骤的算法才是简单算法
【答案】A
【解析】计算机只能识别机器语言,C语言是高级语言,计算机无法直接执行,排除B选项;N—S流程图是复杂流程算法的描述手段。因此C选项错误;算法的复杂与简单,不能用操作步骤数来衡量,D选项错误;循环结构、选择结构、顺序结构都是结构化程序的基本结构,答案为A选项。
(2)C语言程序的模块化通过以下哪个选项来实现
A)变量
B)函数
C)程序行
D)语句
【答案】B
【解析】C语言程序的模块化通过函数来体现,所以选择B。
(3)以下叙述中正确的是
A)书写源程序时,必须注意缩进格式,否则程序会有编译错误
B)程序的主函数名除main外,也可以使用Main或_main
C)程序可以包含多个主函数,但总是从第一个主函数处开始执行
D)在C程序中。模块化主要是通过函数来实现的
【答案】D
【解析】C语言的源程序中对缩进没有要求。所以A选项错误。C语言中区分大小写,main函数不能写成Main或一main,所以B选项错误。一个C程序有且只有一个主函数,所以C选项错误。
(4)以下叙述中正确的是
A)用户自己定义的函数只能调用库函数
B)实用的C语言源程序总是由一个或多个函数组成
C)不同函数的形式参数不能使用相同名称的标识符
D)在C语言的`函数内部,可以定义局部嵌套函数
【答案】B
【解析】A选项中,”用户自己定义的函数只能调用库函数”描述是不正确的,也可以调用自定义函数;C选项中,对于不同函数的形式参数可以使用相同名称的标识符;D选项中,关于函数的定义不可以嵌套,但函数的调用可以嵌套。因此B选项正确。
(5)以下叙述中正确的是
A)C语言程序所调用的函数必须放在main函数的前面
B)C语言程序总是从最前面的函数开始执行
C)C语言程序中main函数必须放在程序的开始位置
D)C语言程序总是从main函数开始执行
【答案】D
【解析】C语言所调用的函数可以放在调用它的函数前,也可以放在调用它的函数后,所以A错误。C语言程序总是从main函数开始执行,所以B错误。main函数的位置可以放在开始,也可以放在中间,也可以放在最后,所以C错误。
二、程序填空题
下列给定程序中,函数fun的功能是:将形参n中个位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新数,作为函数值返回。例如,输入一个整数27638496,函数返回值为64862。请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!
三、程序修改题
下列给定程序中函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为87653142时,t中的数为7531。请改正程序中的错误,使它能得出正确的结果。注意:部分源程序在文件MODI1.C中,不得增行或删行,也不得更改程序的结构!
二、程序填空题
【参考答案】
(1)0
(2)10*X
(3)n/10
【考点分析】
本题考查:已知某数,如何求该数各个位数值,已知各个位数值,如何表示该数;除法运算。
【解题思路】
填空1:定义变量t用来存放某数的各个位数值,此处判断t是否为偶数,即对2求余结果是否为0。
填空2:将t作为x的个位数,原来x的各个位上升1位,即x=10*x+1。
填空3:每循环一次,通过除法运算,去掉数值最后一位。
三、程序修改题
【参考答案】
(1)*t=0;
(2)if(d%2!=0)或if(d%2==1)
【考点分析】
本题考查:指针型变量作为函数参数;if语句条件表达式,结合奇偶数的表示方法来确定该表达式内容。
【解题思路】
(1)由函数定义可知,变量t是指针变量,所以对t进行赋初值0是不对的。因为t指向的是存放新数的变量,所以此处应给新数赋初值0,即*t=0。
(2)变量d表示数s各个位上的数,此处的if条件应为判断d是否为奇数。
-
C语言中的整数(short,int,long)
整数是编程中常用的一种数据,C语言使用int来定义整数(int是integer的简写)。欢迎大家阅读!更多相关信息请关注相关栏目!现代操作系统中int一般占用4个字节内存,共计32位(Bit)。如果不考虑正负数,当所有的位都为1时它的值最大,为232-1=4,294,967,295≈43亿,这是一个很大的...
-
C语言编程中的联合体union入门学习教程详解
联合体(union)在C语言中是一个特殊的数据类型,能够存储不同类型的数据在同一个内存位置。可以定义一个联合体使用许多成员,但只有一个部件可以包含在任何时候给定的值。联合体会提供使用相同的存储器位置供多用途的有效方式。定义联合体要定义联合体,必须使用unio...
-
2017年计算机C语言试题
2017年计算机C语言试题1应当随时学习,学习一切;应该集中全力,以求知道得更多,知道一切。以下是小编为大家搜索整理的计算机C语言试题,希望对大家有所帮助!更多精彩内容请及时关注我们应届毕业生考试网!1、下列数据结构中,属于非线性结构的是A、双向链表B、循环链表C...
-
C语言插入排序算法及实例代码
插入排序是排序算法的一种,下面小编为大家整理了C语言插入排序算法及实例代码,希望能帮到大家!这里以从小到大排序为例进行讲解。基本思想及举例说明插入排序的基本思想是,将元素逐个添加到已经排序好的数组中去,同时要求,插入的元素必须在正确的位置,这样原来排序好...