C语言程序设计试题(2)1(8)

来源:网络收集 时间:2025-06-30 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

D、外部变量与局部变量的作用范围不同 E、在C的函数中,最好使用全局变量

5. 以下正确的说法有( ADE )。

A、C语言程序的基本组成单位是函数 B、函数必须要有返回值

C、一个函数的类型为void,在定义时,可以省略void D、函数声明是一条C语句 E、return语句只能返回一个值

6. 以下叙述中正确的有( ABCDE )。

A、调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 B、函数的实参可以是常量、变量和表达式 C、形式参数只是局限于所在函数

D、函数定义时的函数首部不是语句,后面不能跟分号 E、函数名的存储类别为外部

7. 以下对C语言函数的有关描述中,正确的有( AE )。

A、调用函数时,实参与形参应该数量相同,类型一致 B、函数可以嵌套定义

C、函数必须有返回值,否则不能正确使用

D、程序中有调用关系的所有函数必须放在同一个源程序文件中 E、C程序由一个或一个以上的函数组成

8. 以下对C语言函数的有关描述中,正确的有( BCE )。

A、在C程序中,函数调用不能出现在表达式语句中

B、在C语言中,一个函数一般由两个部分组成,它们是函数说明和函数体 C、函数的实参和形参可以是相同的名字

D、在main()中定义的变量都可以在其它被调函数中直接使用 E、外部类型的变量只能定义一次,但可在不同地方声明多次

9. 一个数据类型为void的函数在被调用后,下列错误的描述有( BCD )。

A、 函数没有返回值 B、 函数可以返回一个系统默认值 C、 函数返回值由用户临时决定 D、 函数可以返回一个不确定的值 10. 下列函数中,能够输出字符数据的函数有( ABD )。

A、 puts( ) B、 printf( ) C、 scanf( ) D、 putchar( ) E、 put( )

第9章 编译预处理

一、 选择题

1、若有宏定义“#define PI =3.14159 ”,且在程序中有语句 s +PI; 其中宏名PI代替的是:( ) A、PI的值 B、3.14159 C、=3.14159 D、宏定义错误,编译通不过 2、设有以下宏定义:#define N 3

#define Y(n) ((N+1)*n) 执行语句z=2*(N+Y(5+1));后,z的值为:( )

A、出错 B、42 C、48 D、54 3、以下说法正确的是:( )

A、#define和printf都是C语句

B、#define 是C语句,而printf不是 C、printf是C语句,但#define不是 D、#define 和printf都不是C语句 4、编译预处理命令以___________结尾。

A、 ; B、 . C、 \\ D、回车

5、用C语言编写的程序是一种_________能运行的程序。 A、只需要经过编译就 B、只需要经过连接就 C、需要经过编译和连接才 D、不需要作任何处理就 6、以下叙述中正确的是( )。

A、 用#include包含的头文件的后缀不可以是“.a”

B、 若一些源程序中包含某个头文件,当该头文件有错时,只需对该头文件进行修改,包含此头文件的所有源程序不必重新进行编译

C、 宏命令行可以看做是一行C语句

D、 C编译中的预处理是在编译之前进行的

7、下面是对宏定义的描述,不正确的是( )。

A、 宏不存在类型问题,宏名无类型,它的参数也无类型 B、 宏替换不占用运行时间

C、 宏替换时先求出实参表达式的值,然后代入形参运算求值 D、 其实,宏替换只不过是字符替代而已 8、以下正确的描述为( )。

A、 每个C 语言程序必须在开头使用预处理命令#include B、 预处理命令必须位于C源程序的首部 C、 在C语言中预处理命令都以“#”开头

D、 C语言的预处理命令只能实现宏定义和条件编译的功能 9、下列选项中不会引起二义性的宏定义是( )。

A、 #define POWER(x) x*x B、 #define POWER(x) (x)*(x) C、 #define POWER(x) (x*x) D、 #define POWER(x) ((x)*(x)) 10、以下程序的输出结果是( )。 #define f(x) x*x #include main() {

int a=6,b=2,c; c=f(a)/f(b); printf(“%d\\n”,c); }

A、 9 B、 6 C、 36 D、18

11、以下程序运行后,输出结果是( )。 #define PT 5.5

#defme S(x) PT*x*x #include main() {

int a=1,b=2;

printf(“%4.1f\\n”,S(a+b));

}

A、 49.5 B、 9.5 C、22.0 D、45.0

12、下列程序执行后的输出结果是( )。 #define MA(x) x*(x-1) #include main() {

int a=1,b=2;

printf(“%d\\n”,MA(1+a+b)); }

A、 6 B、 8 C、 10 D、12

13、以下程序的输出结果为( )。 #include #define SQR(x) x*x main() {

int a,k=3;

a=++SQR(k+1); printf(“%d\\n”,a); }

A、6 B、l0 C、 8 D、 9

14、对下面程序段,正确的判断是( )。 #define A 3

#define B(a) ((A+1)*a) ...

x=3*(A+B(7));

A、 程序错误,不许嵌套宏定义 B、 x=93

C、 x=21 D、 程序错误,宏定义不许有参数. 15、以下程序的输出结果为( )。 #include #define F(y) 3.84+y

#define PRINT(a) PR(a);putchar(?\\n?) main() {

int x=2;

PRINT(F(3)*x); }

A、 8 B、 9 C、 10 D、 11 二、判断题

1、 ( )预处理命令行必须以#开头,且最后要用分号结尾。 2、 ( )宏命令的处理占用编译时间,而不占用运行时间。 三、多选题

1、 下面是对宏定义的描述,正确的有( )。

A、 宏不存在类型问题,宏名无类型,它的参数也无类型 B、 宏替换不占用运行时间

C、 宏替换时先求出实参表达式的值,然后代入形参运算求值

D、 预处理命令行必须以#开头,且最后要用分号结尾 E、 宏命令的处理占用编译时间,而不占用运行时间 2、 以下叙述中不正确的是( )。

A、 用#include包含的头文件的后缀不可以是“.a”

B、 宏不存在类型问题,宏名无类型,它的参数也无类型 C、 宏命令行可以看做是一行C语句

D、 C编译中的预处理是在编译之前进行的 E、 在C语言中预处理命令都以“#”开头

第10章 指 针

一、 选择题

1、 有以下程序

void fun(char *a, char *b) { a=b; (*a)++; } main()

{ char c1='A',c2='a',*p1,*p2; p1=&c1; p2=&c2; fun(p1,p2); printf(\}

程序运行后的输出结果是:( ) A)Ab B)aa C)Aa D)Bb 2、 下列选项中正确的语句组是:( )

A)char s[8]; s={\)char *s; s={\C)char s[8]; s=\)char *s; s=\3、 已定义以下函数 fun(int *p) { return *p; } 该函数的返回值是:( )

A)不确定的值 B)形参p中存放的值 C)形参p所指存储单元中的值 D)形参p的地址值 4、 若有定义:int *p[3];,则以下叙述中正确的是:( )

A)定义了一个类型为int的指针变量p,该变量具有三个指针

B)定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针 C)定义了一个名为*p的整型数组,该数组含有三个int类型元素

D)定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素 5、 已定义以下函数

fun(char *p2, char *p1)

{ while((*p2=*p1)!='\\0'){ p1++;p2++; } } 函数的功能是:( )

A)将p1所指字符串复制到p2所指内存空间 B)将p1所指字符串的地址赋给指针p2

C)对p1和p2两个指针所指字符串进行比较

D)检查p1和p2两个指针所指字符串中是否有'\\0' 6、 有以下程序: main()

{ int p[7]={11,13,14,15,16,17,18},i=0,k=0; while(i<7&&*(p+i)%2) {k=k+*(p+i); i++;} printf(\}

执行后输出的结果是:( )

A) 58 B) 56 C) 45 D) 24

7、 若有如下定义char a[10],*p=a,则对a数组中元素的不正确的引用是:(A)*&a[5] B)a+2 C)*(p+5) D)*(a+5) 8、 有以下程序

int *f(int *x,int *y) { if(*x<*y)

return x; else

return y; } main()

{ int a=7,b=8,*p,*q,*r;

p=&a; q=&b; r=f(p,q);

printf(\}

执行后输出结果是:( )

A) 7,8,8 B) 7,8,7 C) 8,7,7 D) 8,7,8 9、 有以下程序 main()

{ char *s[]={\

p=s[1];

printf(\}

执行后输出结果是:( )

A) n,two B) t,one C) w,one D) o,two 10、 有以下程序 main()

{ int x[8]={8,7,6,5,0,0}, *s;

s=x+3;

printf(\

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库C语言程序设计试题(2)1(8)在线全文阅读。

C语言程序设计试题(2)1(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/wenku/397236.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219