二级C语言选择题专项强化真题试卷14
选择题
1.以下是if语句的基本形式:
(表达式)语句
其中“表达式”( )。(D)
A. 必须是逻辑表达式
B. 必须是关系表达式
C. 必须是逻辑表达式或关系表达式
D. 可以是任意合法的表达式
解析:if中的表达式一般是关系表达式或逻辑表达式,用于描述选择结构的条件,但也可以是其他类型表达式,在其值非零时为真,所以任意合法的表达式都可以做if语句的判断条件。
2.有以下程序:
#include<stdio.h>
typedef struct stu{
char name[10];
char gender;
int score;
}STU;
void f(STU a,STU*b)
{
*b=a:
printf(\\(A)
A. Zhao m 290 Zhao m 290
B. Qian f 350 Zhao m 290
C. Qian f 350 Qian f 350
D. Zhao m 290 Qian f 350
解析:考查结构体和结构体成员的引用。
3.有以下程序:
#include
int new_div(double a,double b)
{return a/b+0.5;}
main()
{printf(\\(C)
A. 1
B. 2
C. 3
D. O
解析:new—div()的返回值是int类型,因此,a/b+0.5(其中a,b均为double类型)的小数部分将被截断。将a、b的值代入进行计算,7.8/3.1+0.5=2.516+0.5=3.016,故打印的结果为3。故答案为C选项。
4.关于C语言函数说明的位置,以下叙述正确的是( )。(A)
A. 在函数说明之后对该函数进行调用,编译时不会出现错误信息
B. 函数说明可以出现在源程序的任意位置,在程序的所有位置对该函数的调用,编译时都不会出现错误信息
C. 函数说明只能出现在源程序的开头位置,否则编译时会出现错误信息
D. 函数说明只是为了美观和编译时检查参数类型是否一致,可以写也可以不写
解析:对被调用函数的说明有两种方式:外部说明和内部说明。在调用函数内对被调函数所作的声明称为内部说明,也称为局部说明;在函数外进行的函数说明称为外部说明,如果说明在程序最前端,外部声明又称为全局说明,因此B、C选项错误;函数“说明”是指利用它在程序的编译阶段对调用函数的合法性进行全面检查,因此D选项错误,故答案为A选项。
5.以下叙述中错误的是( )。(C)
A. 函数中的形参属于局部变量
B. 在函数内部定义的变量只能在本函数范围内使用
C. 在函数外部定义的变量在所有函数中都有效
D. 在不同的函数中可以使用相同名字的变量
解析:全局变量有效范围是从定义的位置开始到所在源文件的结束,在这区域内的函数才可以调用。如果在函数之后定义变量,该变量不能被之前的函数访问。所以C选项说法错误,故答案为C选项。
6.C语言中,最基本的数据类型包括( )。(C)
A. 整型、实型、逻辑型
B. 整型、字符型、数组
C. 整型、实型、字符型
D. 整型、实型、结构体
解析:C语言中,最基本的数据类型包括整型、实型、字符型,答案为C选项。
7.以下选项中正确的语句组是( )。(B)
A. char*s;s={\\
B. char*s;s=\\
C. char s[10];s=\\
D. char s[];8=\\
解析:A选项去掉大括号就正确了;C选项和D选项应在定义时赋初值。因此B选项正确。
8.有以下程序:
#include
#define PT 3.5;
#define S(x)PT*x*x;
main()
{ int a=1,b=2;printf(\\(C)
A. 7.5
B. 31.5
C. 程序有错无输出结果
D. 14.0
解析:宏定义不是C语句,末尾不需要有分号。所以语句printf(\\
9.设有定义:
int n=1234;double x=3.1415;则语句
printf(\\(A)
A. 1234,3.142
B. 123,3.142
C. 1234,3.141
D. 123,3.141
解析:函数printf()中,%md指输出带符号的十进制整数,给定最小宽度为m位,不足m位左端补空格,超过m位按实际位数输出,%.nf表示以小数形式输出实数,小数占n位,对应题目,答案为A选项。
10.以下叙述中错误的是( )。(A)
A. 可以给指针变量赋一个整数作为地址值
B. 函数可以返回地址值
C. 改变函数形参的值,不会改变对应实参的值
D. 当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL
解析:不能将一个整数直接赋给指针变量作为地址,所以A)是错误的。函数的返回值可以是地址,即指针。函数调用中形参值的变化不会传递给实参。
11.下面叙述中错误的是( )。(A)
A. 软件测试的目的是发现错误并改正错误
B. 对被调试的程序进行“错误定位”是程序调试的必要步骤
C. 程序调试通常也称为Debug
D. 软件测试应严格执行测试计划,排除测试的随意性
解析:软件测试是为了发现错误而执行程序的过程,并不涉及改正错误,所以选项A)错误。程序调试的基本步骤有:错误定位;修改设计和代码,以排除错误;进行回归测试,防止引进新的错误。程序调试通常称为Debug,即排错。软件测试的基本准则有:所有测试都应追溯到需求、严格执行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能实施、妥善保存测试计划等文件。
12.数据库应用系统中的核心问题是( )。(A)
A. 数据库设计
B. 数据库系统设计
C. 数据库维护
D. 数据库管理员培训
解析:数据库应用系统中的核心问题是数据库的设计。
13.简单程序设计步骤中不包括( )。(C)
A. 编码
B. 确定算法
C. 安装编译程序
D. 调试
解析:简单程序设计步骤为确定数据结构、确定算法、编码、调试、整理文档,不包括安装编译程序,故答案为C选项。
14.算术运算符和圆括号有不同的运算优先级,对于表达式:a+b+c*(d+e),关于执行顺序,以下说法正确的是( )。(B)
A. 先执行(d+e)得r2,再执行c*r2得r3,再执行a+b得r1,最后执行r1+r3得表达式最后结果
B. 先执行a+b得r1,再执行(d+e)得r2,再执行c*r2得r3,最后执行r1+r3得表达式最后结果
C.
本文档预览:3600字符,共7813字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载