学号
-----------------------------姓
名
----------------------
线…………湖 北 经 济 学 院
………………………2024年C语言期末模拟试卷(四)
………………考试方式:【闭卷】 总分: 【100分】 ……………考试时间:【120分钟】 出题人 :【马玉华】
………………题号 ………密得分 …………? 注意:答案一律写在答题纸上,写在试卷上无效 ………………一. 选择题:(单选,每题2分,共40分,请填写在答题卡上) …………………………1. 对于 if(表达式)语句,以下说法正确的是() …………A) “表达式”的值只能是整数值 …………B) 在“表达式”中不能调用函数 .. ……C) 在“表达式”中不能含有浮点类型的变量或常量 ……D) “表达式”可以是各种形式的算术表达式 ……2. 在以下各标识符中,合法的用户标识符是 ( ) 封A) 001 B) table__1 …C) 0__t ……D) k% …………3. 下列叙述中正确的是________。 ……A) break语句只能用于switch语句体中
……B) continue语句的作用是使程序的执行流程跳出包含它的所有循环 …C) break语句只能用在循环体内和switch语句体内
……D)
在循环体内使用break语句和continue语句的作用相同
………4. 以下程序运行后的输出结果是 _______ 。main( )
……{
…… int i=0,s=1; …… for (;;) … {
……
if (i==5) break; i++; s+=i; } ;
printf(\}
A) B) C) D) 死循环 16 15 11
5. 下列程序的运行结果是________。
#include<stdio.h>
void fun(int*s,int*p) static int t=3; *p=s[t]; t--;
void main() int a[]=2,3,4,5,k; int x;
for(k=0;k<4;k++) fun(a,&x); printf(\
A) B) C) D) 5,4,3,2 2,3,4,5, 2,2,2,2, 5,5,5,5,
6. 设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为______。
A) B) C) D)
4 16 32 52
7. 二维数组a的成员是6个字符组成的串,行下标i的范围从0到8,列下标j的范围从1到
10,则存放a至少需要 (44) 个字节。
A) B) C) D) 90 180 240 540
8. 下述对c语言字符数组的描述中错误的是________?
A) 字符数组可以存放字符串.
B) 字符数组中的字符串可以整体输入?输出.
C) 可以在赋值语句中通过赋值运算符\对字符数组整体赋值. D) 不可以用关系运算符对字符数组中的字符串进行比较. 9. 下列关于数组特征的描述不正确的是________。
A) 数组是一种变量,由规则有序结构中具有同一类型的值的集合构成 B) 在VBA中不允许隐式说明数组
C) Dim astrNewArray (20) As string 这条语句产生有20个元素的数组,每个元素为
一个变长的字符串变量,且第一个元素从1开始
D) Dim astrNewArray(1 To 20) As String 这条语句产生有20个元素的数组 10. 下面程序的输出结果是
#include<stdio.h> main() int a[]=1,2,3,4,5,6,7,8,9,0,*p; p=a;
printf(\
A) B) C) D) 0 1 10 9
11. 若有定义:char *st=\下列程序段中正确的是 A) chara[11];*p;strcpy(p=a+1,&st[4]); B) chara[11];strcpy(++a,st); C) chara[11];strcpy(a,st); D) chara[],*p;strcpy(p=&a[1],st+2);
12. 若已定义:int a[9],*p=a; 并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是
________
A) B) C) D) p+1 a+1 &a[1] *p[1]
13. 指针变量p进行自加运算(即 执行p++;)后,地址偏移值为4,则其 数据类型为()。
A) B) C) D)
int float double char
14. 以下对结构变量stul中成员age的非法引用是 struct student