内容发布更新时间 : 2025/1/8 16:01:43星期一 下面是文章的全部内容请认真阅读。
一、 单项选择题(本大题共19小题)
1.C语言规定:在一个源程序中,main函数的位置( A)必须在最开始
B)必须在系统调用的库函数的后面 C)可以任意 D)必须在最后
2.一个C语言程序是由(
)。[B]
)。[C]
A)一个主程序和若干个子程序组成 B)函数组成 C)若干过程组成 D)若干子程序组成
3.C程序中,注释的内容写在( A)/*和*/之间
)。[A]
C)*/和/*之间
D)*\\和\\*之间
B)\\*和*\\之间
4.C语言程序中每个语句和数据定义的最后必须有一个( A)分号
B)逗号
C)空格
)。[A]
D)冒号
)。[C]
5.若x、i、j和k都是int型变量,则计算下面表达式后,x的值为( X=(i=4,j=16,k=32) A)4
B)16
C)32
D)52 )。[C]
C)double int A;
6.不正确的变量说明是( A)unsigned int ui;
B)short int s; D)int i,j,k;
7.合法的C语言程序标识只符是( A)5dm
B)a>b
)。[C]
D)$a
C)Hh )。[C] C)?ab?
8.不合法的字符常量是( A)?2?
B)?\\101?
D)?\\n? )。[C]
D)a*e/c/b*3
9.若有代数式A)a/b/c*e*3
3ae,则不正确的表达式是( bc
B)3*a*e/b/c
C)3*a*e/b*c
)。[C]
10.以下选项中不合法的赋值语句是( A)c=(a=1,b=2);
B)k=i=j;
C)a=b+c=5; D)n1=(n2=(n3=0));
11.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是(
)。[C]
B) !(A %2 = =0)
C)!(A%2)
D)A%2 )。[C]
A)A%2= =1
12.若w=1,x=2,y=3,z=4,则条件表达式w B)3 C)2 D)1 13.设ch 是char 型变量,其值为 A, 下面表达式的值为( ch = ( ch >= ?A? && ch <= ?Z? ) ? ( ch + 32 ) : ch ; A)A B)a C)Z D)z )。[B] 14.假定所有变量均已正确说明,下列程序运行后x的值是( a=b=c=0, x=35; if (! a) x――; else if (b ); if ( c) x=3; else x=4; A)34 B)4 C)35 D)3 )。[A] 15.下面程序段的输出结果是( int n=4; )。[A] while (n――) printf(“%2d”, ――n); A)2 0 B)31 C)3 2 1 D)2 1 0 16.下面程序段的输出结果是( int x=3; do { printf(“=”, x-=2); } while (!(――x)); A)1 B)30 )。[C] C)1 -2 )。[C] D)死循环 17.以下for循环的执行次数是( for (x=0,y=0;(y=123)&&(x<4);x++); A)是无限循环 B)循环次数不定 C)执行4次 D)执行3次 18.若有说明:int a[5][6]; 则对a数组元素的正确引用是( A)a[2][6] B)a[4,5] C)a[1+3][0] D)a(1)(5) )。[C] 19.判断字符串s1是否大于字符串s2,应当使用( A)if ( s1>s2) )。[D] B)if (strcmp ( s1,s2)) C)if ( strcmp( s2, s1)>0) 二、填空题(本大题共15小题) D)if ( strcmp( s1,s2 )>0) 1.设a=10,则赋值表达式a+=a-=a*a的值是 。 [-180] 2.设a=3,b=4,c=5。则逻辑表达式a||b+c&&b-c的值是 。[1] 3.若已知定义a =10, b=20, 则表达式 ! a 4.若有定义 int a [3][4]={{1,2}, {0},{ 4,6,78,10}}; 则初始化后a[1][2]得到的初值是 。[0] 5.若有定义 int a [3][4]={{1,2}, {0},{ 4,6,78,10}}; 则初始化后a[2][1]得到的初值是 。[6] 6.下面程序段的输出结果是 [**1** **3**] void main() { int x=1, y=0; switch ( x) { case 1: switch ( y ) { case 0: printf(“**1**\\n”); break; case 1: printf(“**2**\\n”); break; } case 2: printf(“**3**\\n”); } } 7.下面程序段的输出结果是 void main() { int x=3,y=6,a=0; 。[x=4, y=5, a=1] 。 while (x++!=(y-=1)) { a+=1; if (y>x) printf(\ } } 8.下面程序输出结果是_____________________。[i=6,k=4] #include While (i=k-1) { k- =3; if (k%5==0) { i++; continue; } else if (k<5) break; i++; } Printf(“i=%d,k=%d\\n”,i,k); } 9.如下程序段的输出结果是 。[16] int i=0 , sum=1; do { sum+=i+ +; } while ( i<6); printf(“%d”, sum); 10.下列的for循环执行 次。[4] for ( x=0, y=0; ( y!=99) && x<4; x++ ); 11.若x 是int型变量,下面程序段的输出结果是 。 [**3##4 **5] for ( x=3; x<6 ; x++ ) printf ( ( x%2 ) ? ( “ ** %d”) : (“## %d\\n”), x); 12.补足程序,实现如下功能:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。 [ (1)score >=0 && score <=100 (2)score { float score, max=0, min=100; printf(“ Input the score”); scanf( “ %f”, &score); while ( (1) ) { if ( score > max) max=score; if ( (2) ) min=score;