{n+=3;
printf(\ } }
A.6次 B.9次 C.12次 D.1次
50904 do?while循环与while循环的主要区别是( D )。
A.while循环体至少无条件执行一次,而do?while循环体可能都不执行
B.do?while循环体中可使用continue语句,while循环体中不允许出现continue语句 C.do?while循环体中可使用break语句,while循环体中不允许出现break语句 D.do?while循环体至少无条件执行一次,而while循环体可能都不执行 50905以下程序段运行后,循环体运行的次数为( A )。
int i=8,a=0;
for ( ;i<8;i++) a+= i; A.0次 B.1次 C.8次 D.无限
50906 以下程序段运行后变量a的值为( C )。 int i=1,a=0; for( ;i<3;i++) { continue; a+=i; } A.6 B.3 C.0 D.5 50907 有以下程序:
void main() { int i;
for(i=1; i<=3; i++) switch(i)
{ case 1: printf(\ case 2: printf(\ default : printf(\ } }
执行后输出结果是( A )。 A.1223 B.1 C.111223 D.123
50908 以下程序的运行结果是( C )。 void main()
{int s = 0, i = 0; while(i< 8) { i++;
if(i%2==0) continue; s+=i;
}
printf(\ A.36 B.7 C.16 D.12
50909 以下程序的运行结果是( B )。 void main()
9
{int s = 0, i = 0; while(i< 10) { i++;
if(i % 2==0) s += i;
}
printf(\ A.20 B.30 C.25 D.45
50910以下程序的运行结果是( C )。 void main() {int x = 5; do
{ printf(\} while(!x); }
A.5 4 3 2 1 B.4 3 2 1 0 C.5 D.4 50911 以下程序的运行结果是( D )。 void main() {int i,j, k=0; for(i= 3;i>=1;i--) {for(j=i;j<=3;j ++)
k += i * j ; }
printf(\ A.19 B.29 C.6 D.25
50912 以下程序运行时,循环体的执行次数是( C )。 void main() { int i,j;
for(i=0,j=1;i<=j+1;i=i+2,j--) printf(\ A.3 B.2 C.1 D.0
51000 设已定义char s[ ]=\,则字符串所占的字节数是( B )。 A.19 B.16 C.18 D.14
51001 数组元素下标的数据类型为( A )。
A.整型常量、字符型常量或整型表达式 B.字符串常量 C.实型常量或实型表达式 D.任何类型的表达式 51002( B )是正确的数组定义。 A.int n=10,x[n]; B.int x[10];
C.int N=10;int x[N]; D.int n;scanf(\
51003若已定义 int arr[10]; 则不能正确引用arr数组元素的是( D )。 A.arr[0] B.arr[1] C.arr[10-1] D.arr[7+3]
51004 若已定义 int x[4]={2,1,3}; 则元素x[1]的值为( C )。 A.0 B.2 C.1 D.3
51005以下程序段运行后,x[1]的值为( B )。 int x[5]={5,4,3,2,1};x[1]=x[3]+x[2+2]-x[3-1];
10
A.6 B.0 C.1 D.5
51006( A )是合法的数组定义。
A.char str[ ]={48,49,50,51,52,53}; B.int a[5]={0,1,2,3,4,5}; C.int a[ ]=\D.char str[ ]=‘string’; 51007 若有以下程序: void main( )
{char s[10]= \ r=s;
printf(\则( A )。
A.执行时输出:ajskdl B.执行时输出:a C.执行时输出:aj D.编译不通过 51008下面程序段的运行结果是( C )。 int m[]={5,8,7,6,9,2},i=1; do{ m[i]+=2; } while(m[++i]>5);
for(i=0;i<6;i++) printf(\ A.7 10 9 8 11 4 B.7 10 9 8 11 2 C.5 10 9 8 11 2 D.5 10 9 8 11 4 51009下面程序段的运行结果是( A )。 int m[]={5,8,7,6,9,2},i=1;
for(i=0;i<6;i++) {if(i % 2 !=0) m[i]+=10; } for(i=0;i<6;i++) printf(\
A.5 18 7 16 9 12 B.15 18 17 16 19 12 C.15 8 17 6 19 2 D.5 8 7 6 9 2 51010下面关于数组的叙述中,正确的是( A )。
A.定义数组后,数组的大小是固定的,且数组元素的数据类型都相同 B.定义数组时,可不加类型说明符
C.定义数组后,可通过赋值运算符\对该数组名直接赋值 D.在数据类型中,数组属基本类型 51011 以下程序段的运行结果是( C )。
int a[]={1,2,3,4},i,j; j=1;
for(i=3;i>=0;i--) { a[i]=a[i]*j; j=j*3;
}
for(i=0;i<4;i++) printf(\
A.3 6 9 12 B.18 12 9 4 C.27 18 9 4 D.54 18 9 4 51012下面关于字符数组的叙述中,错误的是( A )。 A.可以通过赋值运算符“=”对字符数组整体赋值 B.不可以用关系运算符对字符数组中的字符串进行比较 C.字符数组中的字符串可以整体输入、输出 D.字符数组可以存放字符串
11
51100 以下程序段的运行结果是( D )。 main() { int i=4,j; j=i;
pic(i+2*j-2,'*'); putchar('\\n'); for(j-=2;j>=0;j--) { pic(3-j, ' '); pic(i+2*j, '*');
putchar('\\n'); }
}
pic(int len,char c) { int k;
for(k=1;k<=len;k++) putchar(c);} A. * *** ***** *******
B.********** ********** ********** **********
C. **** ****** ******** **********
D.********** ******** ****** ****
51101以下程序段执行后输出的结果是( D )。 int a[][4]={1,2,3,4,5,6,7,8,9,10,11,12}; printf(\ A.2 B.3 C.6 D.7
51102以下程序段执行后p的值是( A )。 int a[3][3]={3,2,1,3,2,1,3,2,1}; int j,k,p=1; for(j=0;j<2;j++) for(k=j;k<4;k++) p*=a[j][k];
A.108 B.18 C.12 D.2
51103不能对二维数组a进行正确初始化的语句是( A )。
A.int a[3][2]={{1,2,3},{4,5,6}}; B.int a[3][2]={{1},{2,3},{4,5}}; C.int a[][2]={{1,2},{3,4},{5,6}}; D.int a[3][2]={1,2,3,4,5};
51104 若有定义:int s[3][4]={{1,2},{0},{3,4,5}};则s[2][1]的值为( B )。 A.3 B.4 C.0 D.1
51105若有定义:int a[3][4];则表达式&a[2][1]-a的值为( C )。 A.7 B.8 C.9 D.10
51106以下程序段运行后sum的值为( D )。 int k=0,sum=0;
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; for(;k<3;k++) sum+=a[k][k+1]; A.9 B.18 C.19 D.21
51107 若有定义int a[2][3];则合法引用数组元素的是( A )。 A.a[0][1/2] B.a[2][1] C.a[2][3] D.a[1][3] 51108 在以下数组定义中,错误的是( A )。
12