学号
-----------------------------姓
名
----------------------线…………湖 北 经 济 学 院
………………………2024年C语言程序设计模拟试卷(一)
………………考试方式:【闭卷】 总分: 【100分】 ……………考试时间:【120分钟】 出题人 :【张春梅】 ………………题号 ………密得分 …………? 注意:答案一律写在答题纸上,写在试卷上无效
………………一. 选择题:(单选,每题2分,共40分,请填写在答题卡上)
…………………………1. ( ) 。为了避免在嵌套的条件语句if 一else 中产生二义性,c 语言规定else 子句,总是与
…………配对。
…………A) 缩排位置相同的尚未配对if .. ……B) 其之前最近的尚未配对if ……C) 之后最近的尚未配对if …D) 同一行上的尚未配对if
…封2. 若有说明:int *p,m=5,n; 以下正确的程序段是________。
A) p=&n;scanf(\,&; ……B) p=&n;scanf(\,* …C) scanf(\,&;*p=6; ……D)
p=&n;*p=m;
…………3. t为int类型,进入下面的循环之前,t的值为0。while(t=1) {...}则以下叙述中,正确的是
……________。
…A) 循环控制表达式的值为0 ……B) 循环控制表达式的值为1 ……C) 循环控制表达式不合法 …D)
以上说法都不对
…………4. 下列程序是死循环的是 ( )
……A) for(;;) ……B) int s=36;
… while(s)=s;
C) int m=10;
dom--;while(m>0);
D) int n=5;
while(n>1) n--;
if(n<0)break;
5. 有以下的代码 int a[4]= {1,2,3,4 }; int *p=a; p++; ++p; printf(\的输出结果是
________
A) B) C) D)
1 2 3 4
6. 若定义:int a=511,*b=&a; 则printf(\
的输出结果为
A) B) C) D)
无确定值 a的地址 512 511
7. 下列程序段的运行结果是________。
#include<stdio.h> void main() {
char str[]=\ printf(\}
A) B) C) D)
67 0
字符'C'的地址 字符'C'
8. 微处理器按其字长可以分为( )。
A) B) C) D)
4位、8位、16位 8位、16位、32位、64位 4位、8位、16位、24位 8位、16位、24位
9. 下述函数功能是_______。 int fun(char*x) char*y=x; while(*y++); return y-s-1;
A) B) C) D)
求字符串的长度 求字符串存放的位置 比较两个字符串的大小 将字符串x连接到字符串y后面
10. 若有以下的说明和语句,则在执行for语句后,’(*(pt+1)+2)表示的数组元素是________。 int
t[3][3],*pt[3],k; for(k=0;k<3;k++) pt[k]= &t[k][0];
A)
B) C) D)
t[2][0] t[2][2] t[1][2] t[2][1]
11. 以下for语句构成的循环执行了______次。
#include
#define N 2#define M N+1#define NUM (M+1)*M/2main() {
int i,n=0;
for(i=1;i<=NUM;i++) {
N++;
printf(\ }
printf(\}
A) 5 B) 6 C) 8 D) 9
12. 以下选项中叙述正确的是______。
A) B) C) D)
简单算法的操作步骤不能超过 20 步 算法需要包含所有三种基本结构 有些算法不能用三种基本结构来表达
C 程序中的语句要经过编译才能转换成二进制机器指令
13. 在以下定义中,标识符p( )。 int (*p)[3];
A) B) C) D)
定义不合法
是一个指针数组名,每个元素是一个指向整数变量的指针 是一个指针,它指向一个具有三个元素的一维数组 是一个指向整型变量的指针