C语言-基本选择题及答案[1]

A)y==0 B)y!=1 C)y=!0 D) y==1

5.若有“int a=1,x=1;”,则循环语句“while(a<10) x++; a++;”的循环执行(A )

A.无限次 B.不确定次 C.10次 D.9次 6. 有以下程序段

int k=0

while(k)k++;

则while循环体执行的次数是 C A) 无限次

B) 有语法错,不能执行

D) 执行1次

C) 一次也不执行

7. 下列循环语句中有语法错误的是( D )

A while(x=y) 5; B while(0) ;

C do 2;while(x= =b); D do x++ while(x= =10); *8.当运行时输入:abcd$abcde?, 下面程序的运行结果是 B

#include main()

{ while(putchar(getchar())!='$'); printf(\}

A) abcd$abcde B)abcd$end C)abcdend D) abcd$abcdeend 9. 以下程序段 ( A )

x=-1;

do { x=x*x; } while(x>0);

A. 是死循环 B. 循环执行一次 C. 循环执行二次 D. 有语法错误 10. 下面程序段执行后的结果为: ( B ) int sum=0, n=10; do { sum=sum+n; n++; } while(n<10)

printf(“%d,%d”,sum,n)

A. 0, 10 B. 10, 11 C. 0, 11 D. 以上结果都不对 11.对以下程序段的叙述正确的是___A____.

int x=1; do

9

{ x= -1*x; } while(!x)

A) 是死循环 B) 循环执行一次 C)循环执行二次 D)有语法错误 12.循环“for(i=0,x=1;i=10&&x>0;i++);”的循环执行( A )。 A.无限次 B.不确定次 C.10次 D.9次 13.执行语句{for(j=0;j<=3;j++) a=1;}后变量j的值是 C .

A)0 B) 3 C)4 D) 1

14. 有如下程序

main()

{ int i,sum=2;

for(i=1;i<=3;i+=2) sum+=i; printf(“%d\\n”,sum); } 该程序的执行结果是 A

A) 6 B) 3 C) 死循环 D) 4 *15、执行语句”for ( i=0; i++<3 ; ) ;”后,变量i的值为( C A、2 B、3 C、4 D、5

16.设x和y均为int型变量,则执行以下的循环后,y的值为( D )。 for(y=1,x=1;y<=50;y++) {

if(x>=0) break;

if(x%2==1) {x+=5;continue;} x-=3; }

A.2 B.4 C.6 D.1 五 数组

1. 以下对一维数组a的正确说明是: D

A) char a(10);

B) int a[];

C)int k=5,a[k]; D)char a[3]={‘a’,’b’,’c’}; 2.以下能对一维数组a进行初始化的语句是: ( C ) A. int a[5]=(0,1,2,3,4,) B. int a(5)={} C. int a[3]={0,1,2} D. int a{5}={10*1} 3.在C语言中对一维整型数组的正确定义为 D 。 A)int a(10); B)int n=10,a[n];

C)int n;a[n]; D)#define N 10

10

。 ) int a[N];

4、已知:int a[10]; 则对a数组元素的正确引用是( D )。

A、a[10] B、a[3.5] C、a(5) D、a[0]

5. 执行下面的程序段后,变量k中的值为 C

A) 不定值 B) 33 C) 30 D) 10 int k=3, s[2]; s[0]=k; k=s[0]*10; *6. 下列说法中错误的是 C

A 构成数组的所有元素的数据类型必须是相同的 B 用指针法引用数组元素允许数组元素的下标越界 C 一维数组元素的下标依次是1、2、3?? D 定义数组时的长度可以是整型常量表达式

7. 若有以下数组说明,则数值最大的和最小的元素下标分别是( B )。 int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};

A.1,12 B.0,11 C.1,11 D.0,12 8.若有以下数组说明,则i=10;a[a[i]]元素数值是( B )。 int a[12]={1,4,7,10,2,5,8,11,3,6,9,12}; A.10 B.9 C.6 D.5

9. 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组

x在内存中所占字节数是 D A) 3

11.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )

A. 2 B. 3 C. 4 D.无确定值 12.以下定义语句中,错误的是 ( D )

B) 6 C) 10 D) 20

A) int a[]={1,2}; B) char *a; D) int n=5,a[n];

C) char s[10]=“test”; int i;

13.下面程序段的输出结果是: ( C )

int x[3][3]={1,2,3,4,5,6,7,8,9}; for (i=0;i<3;i++) printf(\

A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 9 14.对二维数组的正确定义是( C )

11

A.int a[ ] [ ]={1,2,3,4,5,6}; B.int a[2] [ ]={1,2,3,4,5,6};

C.int a[ ] [3]={1,2,3,4,5,6}; D.int a[2,3]={1,2,3,4,5,6}; 15.已知int a[3][4];则对数组元素引用正确的是__C___ A)a[2][4] B)a[1,3] C)a[2][0] D)a(2)(1)

六、函数

1.C语言中函数返回值的类型是由 A 决定的.

A)函数定义时指定的类型 B) return语句中的表达式类型 C) 调用该函数时的实参的数据类型 D) 形参的数据类型 2. 在C语言中,函数的数据类型是指( A )

A 函数返回值的数据类型 B. 函数形参的数据类型 C 调用该函数时的实参的数据类型 D.任意指定的数据类型 *3.C程序中函数返回值的类型是由 A 决定的.

A)函数定义时指定的函数类型 B) 函数中使用的最后一个变量的类型 C)调用函数时临时确定 D) 调用该函数的主调函数类型 *4. C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式为

( B )

A. 由系统选择 B. 单向值传递 C. 由用户指定传递方式 D. 地址传递 5. 在函数调用时,以下说法正确的是( B ) A.函数调用后必须带回返回值 B.实际参数和形式参数可以同名

C.函数间的数据传递不可以使用全局变量 D.主调函数和被调函数总是在同一个文件里 *6. 在C语言程序中,有关函数的定义正确的是( B )。

A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可以嵌套 C.函数的定义和函数的调用均不可以嵌套 D.函数的定义和函数的均可以嵌套

A.在C语言程序中,调用函数时,如函数参数是简单变量,则只能把实参的B.C语言函数既可以嵌套定义又可递归调用 C.C语言函数必须有返回值,否则不能使用函数

D.在C语言程序中有调用关系的所有函数必须放在同一个源程序文件中

*7. 以下对C语言函数的有关描述中,正确的是( A )。 值传递给形参,形参的值不能传送给实参

*8.C语言中对函数的描述正确的是 C .

A)可以嵌套调用,不可以递归调用 B) 可以嵌套定义

12

联系客服:779662525#qq.com(#替换为@)