C语言题

更新时间:2023-10-10 09:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2. new、1st、2nd均可用作程序中的变量名。 2(2222)

3. 不必通过参数传递,在所有的函数中可以直接访问主函数中定义的变量。 2(×) 4. 静态局部变量不存放在栈区,因而它不随其所在函数的返回而被销毁。 5. C++函数原型中,除形式参数的数据类型必须指出外,形式参数的名称也必

须给定不能缺少。

6. 有变量定义语句double x, *p;则sizeof(x)等于sizeof(p)。

2(×) 2(×) 1(√)

7. 变量的引用是变量实体(一个已经存在的变量)的一个别名。引用只是声明,

不是定义。声明变量的引用时,必须用一个变量实体对其进行初始化。 1(8. 若有原型为void f(int &num);的函数,则程序中可以用常量作为实参

调用函数。例如,可以使用函数调用语句f(5);。

2(9. C-字符串是以特殊字符'\\0'作为字符串结束标志的,字符串中字符是依次

顺序存放的。

1(10. 若有原型为double f(double);的函数,则函数调用表达式f(5.5)本身表示该函数返回时所创建的临时变量。 11111111111111111111111111111111111 3. C++运算符分成多个优先级。优先级相同的运算从左至右依次进行

×

) 4. 任何变量在定义时若不初始化,则其值是不可预知的。 (

×

5. unsigned short int型变量的取值范围为1~65536。 (

×

6. sizeof(signed char)与sizeof(unsigned char)的值相等。 (

7. C++程序中,在一个函数体内不能调用该函数自身。 (

×

8. 关系运算的结果为bool型的值(逻辑值),其值只能是true(与1同)

或false

0

(√)

9. 有变量定义语句double *p;,则指针变量p占用sizeof(double)字节

)

) ) √×√(×)

10. 函数的形式参数可以是“传值型”、“传地址值型”和“引用型”的。 (√)

2. C++表达式double(5/2)的结果为2(即2.0),类型为double。

(√)

7. 定义变量double *p;则系统为指针变量p分配sizeof(double)字节的

内(×)

8. 定义变量int a=5; double x;并执行表达式语句x=(double)a/2;后,

变量a本身的数据类型将被改成double型,在内存中将占用sizeof(double)字节。

(×)

9. 定义数组double array[10];系统将为该数组分配10*sizeof(double)

(√)

10. 定义数组double array[10];后, array[10]表示整个数组的所有元

素。(×)

11. C++中,new是一个运算符(或称为操作符)。运算表达式new double[10]

执行时,将在内存的堆空间中,“切下”10*sizeof(double)字节连续的内存空间,并将该空间的首地址作为表达式的值;若“切下”内存空间的操作不成功,则该表达式的值为NULL(空地址)。 (√)

12. 程序中char *str=”abcdefg”; 表示定义一个指针变量str(系统分配

能够存放一个地址值的内存空间),”abcdefg”表示系统分配8字节的内存空间存放该字符串常量,用”abcdefg”本身表示存放该字符串的内存空间首地址,并用该首地址值初始化指针变量(√)

13. 程序中char str[80]=”abcdefg”; 其中”abcdefg”不是字符串常量,

并不表示地址值,而是用来初始化数组元素的,其中元素str[7]的值为

字节连续的内存空间,该空间的首地址用array表示。

str。

串(√)

结束标志字符’\\0’。

14. 程序中执行char str[80]=”abcdefg”; cout << str; 后将输出一

个(×)

15. 程序中执行int a[5]={0, 1, 2, 3, 4}; cout << a; 后将输出一

个(√)

19. 对于值返回的函数(如double sqrt(double);)函数返回时,将创建

(√)

20. 有两个函数,其形式参数相同、函数名相同,仅它们的返回类型不同,则

它(×)

(2) 指出函数double f1(double *array, int n);的功能;

计算以array为首地址的数组前n个元素之和。

(3) 指出函数double f2(double *array, int n);的功能。

同上。

4. 字符串常量”ABCD”的长度为4,在内存中占5个字节. (√) 5. 结构体变量的数据成员必须具有相同的数据类型. (×) 6

.

次. (√) 7. 执行new操作符运算,其结果为内存堆空间的一个地址值或者N

U

L

L

√)

8. 有int型变量a,则语句if(!a)a++;等价于语句if(a==0)a++; (√) 9. 原型为void f1(int x); int f1(int y);的2个函数构成函数重载.(×) 10.函数返回时均创建一个与返回类型一致的临时变

量. (×) 1

2

.

化. (√) 13.有语句double a=5, *p=&a, &r=a, *&pr=p; 14.有变量定义int y=2008;则表达式

(y%4==0 && y0 || y@0==0)的值为1. (√) 则a, p[0], *p, r, *pr, pr[0]均表示同一个变量. (√)

15.有变量定义double x=-3.14;则表达式

(x>0?1:(x<0?-1:0))的值为0. 2. 类型修饰符unsigned修饰 类型是错误的。 A. char B. int C. long int D. float 5.执行以下程序的输出是 。 #include void main() { int i;

for(i=4; i<=10; i++) {

if(i%3==0) continue; cout << i; } }

A. 4 5 B. 4 5 7 8 10 C. 6 7 D. 6 7 8 9 10 6.设int x=3,y=4,z=5;则下面表达式中,值为零的是 。 A. ’x’&&’y’

B. x<=y

C. x||y+z&&y-z

D. !((x

8.下列数组定义中,错误的是 。

A. char s1[] = {’A’,’B’,’C’,’D’}; B. char s2[][4] = {”xyz”,”ijk”};

(×) C. char s3[4] = ”char”; D. int s4[] = {6,5,4,3};

9.关于下列设置参数默认值的描述中,正确的是 。 A. 不允许设置参数的默认值

B. 设置参数默认值只能在定义函数时设置 C. 设置参数默认值时,应该是从右至左依次设置 D. 设置参数默认值时应该全部参数都设置

10.下列重载函数,正确的是 。

A.void f(int a,float b); B.void f(int a,float b); void f(int c,float d); void f(float, int b); C.float f(int a,float b);D.int f(int a, int b); int f(int b, float a); float f(int a,int b); 11.若要建立如下指定关系,错误的是 。 A. int *p, n=100; B. int n, *p=&n; P = &n; *p = 100; C. int *p=&n, n; D. int *p,n; *p = 100; p = &n; n = 100;

12. 若有以下定义说明及函数作用,则函数声明正确的是 。 void main() {

int c[2][3]={1, 2, 3, 4, 5, 6}; double s; s = f(c);

本文来源:https://www.bwwdw.com/article/3f0f.html

Top