|
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。
一、单选题(共 35 道试题,共 70 分。)V 1. 以下正确的说法是( )
A. 用户若需要调用标准库函数,调用前必须重新定义
B. 用户可以重新定义标准库函数,如若此,该函数将失去原有定义
C. 系统不允许用户重新定义标准库函数
D. 用户若需要使用标准库函数,调用前不必使用预处理命令将该函数所在的头文件包含编译,系统会自动调用。
满分:2 分
2. 当说明一个结构体变量时系统分配给它的内存是( )
A. 各成员所需内存量的总和
B. 结构中第一个成员所需内存量
C. 成员中占内存量最大者所需的容量
D. 结构中最后一个成员所需内存量
满分:2 分
3. 设有程序段 int k=10; while (k=0) k= k-1; 则下面描述中正确的是( )
A. while循环执行10次
B. 循环是无限循环
C. 循环体语句一次也不执行
D. 循环体语句执行一次
满分:2 分
4. 变量的指针,其含义是指该变量的( )
A. 值
B. 地址
C. 名
D. 一个标志
满分:2 分
5. 以下程序的正确运行结果是( ) #include int func(int a,int b); main( ) { int k=4,m=1,p; p=fun(k,m);printf(“%d,”,p); p=fun(k,m);printf(“%d\n”,p); } func(int a,int b) {static int m=0,i=2; i+=m+1; m=i+a+b; return m; }
A. 8,17
B. 8,16
C. 8,20
D. 8,8
满分:2 分
6. 若fp是指向某文件的指针,且已读到该文件的末尾,则C语言函数feof(fp)的返回值是( )
A. -1
B. 1
C. 0
D. NULL
满分:2 分
7. 一个C语言程序是由( )
A. 一个主程序和若干子程序组成
B. 函数组成
C. 若干过程组成
D. 若干子程序组成
满分:2 分
8. 有以下程序段:int x=0,s=0; while (!x!= 0) s+=++x; printf("%d",s); 则有以下程序段( )
A. 运行程序段后输出0
B. 运行程序段后输出1
C. 程序段中的控制表达式是非法的
D. 程序段执行无限次
满分:2 分
9. 下面描述正确的是( )
A. 两个字符串所包含的字符个数相同时,才能比较字符串
B. 字符个数多的字符串比字符个数少的字符串大
C. 字符串"STOP- "与"STOP"相等(-表示空格)
D. 字符串"That"小于字符串"the"
满分:2 分
10. 若要求从键盘读入含有空格字符的字符串,应使用函数( )
A. gets()
B. scanf()
C. getchar()
D. getch()
满分:2 分
11. 能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是( )
A. a>=10 or a<=0
B. a>=0|a<=10
C. a>=10 &&a<=0
D. a>=10‖a<=0
满分:2 分
12. 若用数组名作为函数调用的实参,传递给形参的是( )
A. 数组的首地址
B. 数组第一个元素的值
C. 数组中全部元素的值
D. 数组元素的个数
满分:2 分
13. 以下不能对二维数组a进行正确初始化的语句是( )
A. int a[2][3]={0};
B. int a[][3」={{1,2},{0}};
C. int a[2][4]={{1,2},{3,4},{5,6}};
D. int a[][3]={1,2,3,4,5,6};
满分:2 分
14. 下面程序的输出是( ) main() {char x=040; printf("%d\n",x=x<<1);}
A. 100
B. 160
C. 120
D. 64
满分:2 分
15. 假设调用函数有以下定义和函数f调用,则函数f中对形参数组错误定义的是( ) char c[5]={‘a’,’b’,’\0’,’c’,’\0’}; printf(“%s”,c);
A. f(int array[][6])
B. f(int array[3][])
C. f(int array[][4])
D. f(int array[2][5])
满分:2 分
16. 若有以下定义,则能使值为3的表达式是( ) int k= 7,x =12;
A. x%=(k%= 5)
B. x%=(k-k%5)
C. x%=k- k%5
D. (x%=k)-(k%=5)
满分:2 分
17. 已知各变量的类型说明如下: int k,a,b; unsigned long w= 5; double x=1.42; 则以下不符合C语言语法的表达式是( )
A. x%(-3)
B. w+=-2
C. k=(a=2,b=3,a+b)
D. a+= a-=(b=4)*(a=3)
满分:2 分
18. 以下程序的输出结果是 ( ) main() {int i; for(i=0;i<3;i++) switch(i){ case 0:printf("%d",i); case 2:printf("%d",i); default:printf("%d",i); } }
A. 022111
B. 021021
C. 000122
D. 012
满分:2 分
19. 若有说明:int a[3][4]; 则对a数组元素的正确引用是( )
A. a[2][4]
B. a[1,3]
C. a[1+1][0]
D. a(2)(1);
满分:2 分
20. 若有定义:int x=0,*p=&x;则语句printf(“%d\n”,*p);的输出结果是( )
A. 随机值
B. 0
C. X的地址
D. P的地址
满分:2 分
21. 变量的指针,其含义是指该变量的 ( )
A. 值
B. 地址
C. 名
D. 一个标志
满分:2 分
22. 假定ptr1和ptr2分别是指向某个字符串的指针,则在下列选项中非法的语句中是( )
A. if(ptr1==ptr2) printf("yes.");
B. *ptr1=48+(ptr1-ptr2);
C. *(ptr1+=2)=*ptr2;
D. *(ptr1-1+ptr2)=getchar();
满分:2 分
23. sizeof(float)是( )
A. 一个整型表达式
B. 一种函数调用
C. 一个不合法的表达式
D. 一个不合法的表达式
满分:2 分
24. enum color{red,green,yellow=5,white,black}定义了一枚举类型。编译程序为值表中各标识符分配的枚举值依次为( )
A. 1、2、3、4、5
B. 0、1、5、2、3
C. 0、1、5、6、7
D. 3、4、5、6、7
满分:2 分
25. 若用数组名作为函数调用的实参,传递给形参的是( )
A. 数组的首地址
B. 数组第一个元素的值
C. 数组中全部元素的值
D. 数组元素的个数
满分:2 分
26. 下面程序段的运行结果是( ) char c[]="\t\v\\\0will\n"; printf("%d",strlen(c));
A. 14
B. 3
C. 9
D. 字符串中有非法字符,输出值不确定
满分:2 分
27. 已有以下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的错误定义方式为( ) int a[3][4]; f(a);
A. f(int array[][6])
B. f(int array[3][])
C. f(int array[][4]
D. f(int array[2][5])
满分:2 分
28. 已知各变量的类型说明如下: int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2; 则以下符合C语言语法的表达式是( )
A. a+=a-=(b= 4)*(a=3)
B. a=a*3=2
C. x%(-3)
D. y=f1oat(i)
满分:2 分
29. 在c语言中,引用数组元素时,其数组下标的数据类型允许是( )
A. 整型常量
B. 整型表达式
C. 整型常量或整型表达式
D. 任何类型的表达式
满分:2 分
30. 有四组对指针变量进行操作的语句,以下判断正确的选项是( ) (1)int *p,*q;q=p; int a,*p,*q;p=q=&a; (2)int a,*p,*q;q=&a;p=*q; int a=20,*p;*p=a; (3)int a=b=0,*p;p=&a;b=*p; int a=20,*p,*p=&a;*p=*q; (4)int a=20,*p;*q=&a;p=q; int p,*q;q=&q;
A. 正确1); 不正确2),(3),(4)
B. 正确1),(4); 不正确2),(3)
C. 正确3); 不正确1),(2),(4)
D. 以上结论都不正确
满分:2 分
31. 若有以下说明和语句: struct student {int age; int num; }std,* p; p=&std; 则以下对结构体变量std中成员age的引用方式不正确的是( )
A. std.age
B. p->age
C. (*p).age
D. *p.age
满分:2 分
32. 设有以下语句: char str[4][12]={"aaa","bbb","ccc","ddd"}; char *strp[4]; int i; for(i=0;i<4;i++) strp=str; 若0<=k<4,下列选项中对字符串的非法引用是( )
A. strp
B. str[k]
C. strp[k]
D. *strp
满分:2 分
33. 若用数组名作为函数调用的实参,传递给形参的是( )
A. 数组的首地址
B. 数组中第一个元素的值
C. 数组中的全部元素的值
D. 数组元素的个数
满分:2 分
34. 以下不正确的说法是( )
A. 全局变量,静态变量的初值是在编译时指定的
B. 静态变量如果没有指定初值,则其初值为0
C. 动态变量如果没有指定初值,则其初值不确定
D. 函数中的静态变量在函数每次调用时,都会重新设置初值
满分:2 分
35. C语言规定,函数返回值的类型是由( ) 决定的
A. return语句中的表达式类型
B. 调用该函数时的主调函数类型
C. 调用该函数时由系统临时
D. 在定义函数时所指定的函数类型
满分:2 分
二、多选题(共 5 道试题,共 10 分。)V 1. 定义char s[81]; 后,能正确输入一个字符串到数组s的语句是( )
A. gets(s);
B. gets(&s[0]);
C. scanf (”%s”,&s[0]);
D. scanf (”%c”,s);
满分:2 分
2. 以下关于C源程序文件的说法中正确的是( )
A. 是一种二进制文件
B. 是一种文本(ASCII码)文件
C. 可以用DOS的type命令显示其内容
D. 文件扩展名一般为c
满分:2 分
3. 在下面C语言的函数说明语句中,正确的是( )
A. int fun(int , int);
B. int fun(int x,y);
C. int fun(x,y);
D. int fun(int x; int y);
E. int fun(int x,int y);
满分:2 分
4. 以下哪些是关于指针数组的正确描述( )
A. int (*a)[4];
B. int *a[4];
C. 指针数组每个元素都是指针变量
D. 若int a[4][4]; int *b[]={a[0],a[1],a[2],a[3]}; 则b是指针数组
E. 指针数组与指向数组的指针是等价的
满分:2 分
5. 有定义:int a[5][4],*p=a[0];,则能正确引用a[2][3]元素地址的有( )
A. a[2]+3
B. *((p+2)+3)
C. *(p[2]+3)
D. *(a+2)+3
E. p+2*4+3
满分:2 分
三、判断题(共 10 道试题,共 20 分。)V 1. 设有下列说明语句struct ss{int x;float y;}ex; 则ex是结构体类型名。
A. 错误
B. 正确
满分:2 分
2. 在内存中存储结构体类型的变量要占连续一段的存储单元。
A. 错误
B. 正确
满分:2 分
3. continue语句用在循环体中,可使整个循环不结束。
A. 错误
B. 正确
满分:2 分
4. 结构体类型的数据是由不同类型的数据组合而成的。
A. 错误
B. 正确
满分:2 分
5. 被定义为指向某结构体类型数据的指针变量,即可以指向具有该类型的变量,又可以指向它其中的一个成员。
A. 错误
B. 正确
满分:2 分
6. C语言采用解释方式将源程序转换为二进制的目标代码。
A. 错误
B. 正确
满分:2 分
7. 动态变量都存储在内存动态存储区中。
A. 错误
B. 正确
满分:2 分
8. 以数组名作函数参数时,实参数组与形参数组都不必定义长度,因此实参与形参的结合方式是地址结合,与数组长度无关。
A. 错误
B. 正确
满分:2 分
9. C语言把文件看作是一个字符的序列。
A. 错误
B. 正确
满分:2 分
10. 条件运算符“?:”的优先级高于赋值运算符。
A. 错误
B. 正确
满分:2 分
谋学网: www.mouxue.com 主要提供奥鹏作业资料,奥鹏在线作业资料,奥鹏离线作业资料以及奥鹏毕业论文,致力打造中国最专业远程教育辅导社区。 |
|