C语言复习题(精简)
- 格式:xls
- 大小:145.00 KB
- 文档页数:4
C语言复习题(多选题)
序号题目ABCDE正确
答案
1以下关于数组的描述中,正确
的有:在定义数组
时,有时可以
将该数组的维
数省略数组元素可以
像普通变量一
样使用定义int
a[10]={6,7,8,
9,10};是将这5
个初值依次赋
给a[0]至a[4]如有定义char
a[]="student"
; 则数组a的长
度为7若有定义
double
x[3][5]; 则x
数组中行下标
的下限为0,列
小标的上限为4ABCE
2以下对C语言函数的有关描述
中,正确的有:在C程序中,函
数调用不能出
现在表达式语
句中在C语言中,一
个函数一般由
两个部分组
成,它们是函
数首部和函数函数的实参和
形参可以是相
同的名字在main()中定
义的变量都可
以在其它被调
函数中直接使
用外部类型的变
量只能定义一
次,但可在不
同地方声明多
次BCE
3函数调用
strcat(strcpy(str1,str2),s
tr3)的功能,以下说法错误的
有:将串str1复制
到串str2中后
在连接到串
str3之后将串str1连接
到串str2之后
再复制到串
str3之后将串str2复制
到串str1中后
再将串str3连
接到串str1之将串str2连接
到串str1中后
再将串str1复
制到串str3中将串str2连接
到串str1中后
再将串str3复
制到串str1中ABDE
4以下叙述中正确的有:一个C语言程序
有且仅有一个
main函数C语言程序中,
main函数是没
有参数的一个函数通过
其他函数间接
的调用了自
身,这种情况
也是一种递归main函数是由
系统调用的若要通过函数
参数带回多个
返回值,则应
使用按地址传
送的参数结合ACDE
5下面叙述中,正确的有:函数的定义不
能嵌套,但函
数调用可以嵌
套为了提高可读
性,编写程序
时应该适当使
用注释变量定义时若
省去了存储类
型,系统将默
认其为静态型函数中定义的
局部变量的作
用域在函数内
部函数必须有返
回值,否则不
能使用函数ABD
6以下不正确的说法有:定义函数时,
形参的类型说
明可以放在函
数体内return后边的
值不能为表达
式函数返回值的
类型可能会与
函数的计算结
果类型不一致在不同的函数
中可以使用相
同名字的变量如果形参与实
参的类型顺序
不一致,以实
参顺序为准ABE
7以下叙述中,正确的描述是
有:函数之内定义
的变量称为内
部变量,内部
变量是全局变
量在一个函数中
既可以使用本
函数中的局部
变量,又可以
使用外部变量外部变量定义
和外部变量说
明的含义不同外部变量与局
部变量的作用
范围不同在C的函数中,
最好使用全局
变量BCD
8以下正确的说法有:C语言程序的基
本组成单位是
函数函数必须要有
返回值一个函数的类
型为void,在
定义时,可以
省略void函数声明是一
条C语句return语句只
能返回一个值ADE
9以下叙述中正确的有:调用函数时,
只能把实参的
值传送给形
参,形参的值
不能传送给实函数的实参可
以是常量、变
量和表达式形式参数只是
局限于所在函
数函数定义时的
函数首部不是
语句,后面不
能跟分号函数名的存储
类别为外部ABCDE
10以下对C语言函数的有关描述
中,正确的有:调用函数时,
实参与形参应
该数量相同,
类型一致函数可以嵌套
定义函数必须有返
回值,否则不
能正确使用程序中有调用
关系的所有函
数必须放在同
一个源程序文C程序由一个或
一个以上的函
数组成AE
11下面叙述中正确的有:结构体和共用
体都是由多个
不同数据类型
的成员组成,
但在任何同一
时刻,共用体
中只存放了一
个被选中的成
员,而结构体对于共用体的
不同成员赋
值,相会对其
他成员重写,
原来成员的值
就不存在了而
对于结构体的
不同成员赋值
是互不影响的共用体变量可
以作为函数的
参数成函数
值,也可使用
指向共用体的
指针变量。共用体不可以
作为结构体的
成员,但结构
体也可作为共
用体的成员。以上都不对AB
多选题第 1 页序号题目ABCDE正确
答案
12设有如下说明
typedef struct ST
{long a;int b;char
c[2];}NEW;
则下面叙述中不正确的是:以上的说明形
式非法ST是一个结构
体类型NEW是一个结构
体类型NEW是一个结构
体变量以上都不对AD
13一个数据类型为void的函数在
被调用后,下列错误的描述函数没有返回
值函数可以返回
一个系统默认函数返回值由
用户临时决定函数可以返回
一个不确定的以上都不对BCD
14下列函数中,能够输出字符数
据的函数有:puts( )printf( )scanf( )putchar( )put( )ABD
15以下关于数组的描述中,正确
的有:数组名实质上
是数组的首地
址,是一个常
量,不能对其
赋值在定义数组
时,有时可以
将该数组的维
数省略一个一维数
组,它的每一
个元素也是类
型相同的一维
数组时,便构如有定义int
a[3][4]={0};
则数组a的所有
元素初值均为0可以通过数组
名来整体引用
一个数组ABCD
16以下关于数组的描述中,错误
的有:如有定义int
a[2][3];则数
组a的最后一个
元素为a[1][2]一个一维数
组,它的每一
个元素也是类
型相同的一维
数组时,便构若有说
明:static int
a[3][3]; 那么
数组a中每个元
素初值为0在定义二维数
组时,可以将
该数组的两个
维数全部省略如有定义char
a[20]; 则可以
通过a="I am a
boy"; 给a赋值DE
17若有说明:int
a[][4]={0,0};,则下面正确
的叙述有:数组a的每个元
素都可得到初
值0二维数组a的第
一维大小为1因为二维数组a
中初值的个数
不能被第二维
大小的值整
除,则第一维
的大小等于所
得商数再加1,
故数组a的行数只有元素
a[0][0]和
a[0][1]可得到
初值0,其余元
素均得不到初
值只有元素
a[1][1]和
a[1][2]可得到
初值0,其余元
素均得不到初
值ABC
18以下关于数组的描述中,正确
的有:若有定义char
a[]="hello";
,则数组a的长
度为6有定义char
a[3]; 则定义
了a[1]、a[2]
、a[3]三个数
组元素构成字符数组
的各个元素必
须是字符类型
的数据可以通过数组
名来整体引用
一个数组设有数组定义
char array [
]="China"; 则
数组array所占
的空间为5个字
节AC
19以下关于数组的描述中,正确
的有:在C语言中,允
许用字符串来
直接初始化字
符数组若有定义char
a[20];,则可
以通过a="I am
a boy";给a赋
值若有char
a[10]={1,2,3}
;,则是将3个
初值依次赋给
a[1]至a[3]构成字符数组
的各个元素必
须是字符类型
的数据数组名实质上
是数组的首地
址,是一个常
量,不能对其
赋值ADE
20以下关于数组的描述中,错误
的有:字符数组的输
出不能一次性
的整体输出若有char
a[10]={1,2,3}
;,则是将3个
初值依次赋给
a[0]至a[2]构成字符数组
的各个元素可
以是不同数据
类型的元素构成字符数组
的各个元素必
须是字符类型
的数据若有定义char
b[]="hello";
,则数组b的长
度为6AC
21下列语句中,正确的有:char
str[5]="hello
";char
str[]={'h','e
','l','l','o'
,'\0'};char
str[5]={"hi"}
;char
str[100]="";char
str[3]="this"
;BCD
22定义了一维int型数组a[10]
后,下面正确的引用有:a[0]=1;a[10]=2;a[0]=5*2;a[1]=a[2]*a[0
];a[2]=a[1]+a[0
];ACDE
23以下关于数组的描述中,正确
的有:在定义数组
时,有时可以
将该数组的维
数省略数组名实质上
是数组的首地
址,是一个变
量地址,可对
其进行赋值构成数组的各
个元素可以有
不同的数据类
型有定义:int
a[3]; 则定义
了a[0]、a[1]
、a[2]三个数
组元素在程序中可以
对数值数组中
的数据进行整
体使用AD
24 设有以下说明语句
struct stu
{ int a;float b;
}stutype;
则以下叙述正确的是:struct 是结构
体类型的关键
字struct stu 是
用户定义的结
构体类型stutype 是用
户定义的结构
体类型名a 和 b 都是结
构体成员名以上都不对ABD
多选题第 2 页