c语言综合练习题及答案 联系客服

发布时间 : 星期日 文章c语言综合练习题及答案更新完毕开始阅读

switch(i%5)

{ case 0: printf(“*”) ; break; case 1: printf(“#”) ; break; default: printf(“\\n”); case 2: printf(“&”); } } 2. main( )

{ char a[5][5],i,j; for(i=0;i<5;i++)

for(j=0;j<5;j++)

if(i= =0||i= =j)

a[i][j]='*'; else a[i][j]=' '; for(i=0;i<5;i++) {for(j=0;j<5;j++) printf(\

printf(\ } }

3. main( )

{ int i=5 ;

printf(“%d\\n”, sub(i) ); } sub( int n) { int a;

if(n==1) a=1; else a= n+sub(n-1); return(a); }

4.int f(int x,int y)

{ return((y-x)*x); } main()

{ int a=3,b=4,c=5,d; d=f(f(3,4),f(3,5)); printf(\} 5. main( )

{ int a = 2, b = 3, c ;

c = a ;

if ( a>b ) c = 1 ; else if ( a == b ) c = 0 ; else c = -1 ; printf ( “%d\\n”, c ) ;

}

6.# include

main ( )

{ int a[ ]={1,2,3,4,5,6},﹡p; for (p=&a[5];p>=a;p﹣﹣)

printf(〞%d〞, ﹡p); printf(〞\\n〞); }

五、编程题(共27分)

1.编一程序,对于给定的一个百分制成绩,输出相应的五分制成绩。设:90分以上为?A?;80~89分为 ?B?;70~79分为?C?;60~69分为?D?;60分以下为 ?E?。

2.有一个5*5二维数组,试编程求周边元素及对角线元素之和,并输出该数组中值最小的元素。

3.编写一个程序,用12个月份的英文名称初始化一个字符指针数组,当键盘输入整数为1到12时,显示相应的月份名,键入其它整数时显示错误信息。

模拟试题五

一、选择题(本大题30分,每小题2分) 1.下列说法正确的是 。

A) 在执行C程序时不是从mian函数开始的

B) C程序书写格式严格限制,一行内必须写一个语句

C) C程序书写格式自由,一个语句可以分写在多行上

D) C程序书写格式严格限制,一行内必须写一个语句,并要有行号

2.设有以下定义,则能使值为3的表达式是: 。 int k=7, x=12;

A)x%=(k%=5) B)x%=(k-k%5) C)x%=k D)(x%=k)-(k%=5)

3.以下选项中是C语言的数据类型的是: 。

A)复数型 B)逻辑型 C)双精度型 D)集合型

4.下面能正确表示变量a在区间[0,5]或(6,10)内的表达式为: 。

A)0<=a || a<=5 ||6

B)0<=a&&a<=5 || 6

5.已知字母A的ASCII码为十进制65,下面程序段的运行结果为: 。

char ch1,ch2;

ch1= ?A?+5-3; ch2= ?A?+6-3; printf(“%d, %c\\n”, ch1,ch2);

A)67, D B)B, C

C)C, D D)不确定值

6.根据定义和数据的输入方式,输入语句的正确形式为: 。 已有定义:float a1, a2; 数据的输入方式: 4.523

3.52

A)scanf(“%f %f ”, &a1,&a2);

B)scanf(“%f ,%f ”, a1, a2);

C)scanf(“%4.3f ,%3.2f ”, &a1,&a2); D)scanf(“%4.3f %3.2f ”, a1,a2); 7.在C语言中,多分支选择结构语句为:

switch(c)

{ case 常量表达式1:语句1; ……

case 常量表达式n-1:语句n-1; default 语句n;}

其中括号内表达式c的类型: 。

A)可以是任意类型 B)只能为整型 C)可以是整型或字符型 D)可以为整型或实型 8.以下能对二维数组a进行正确说明和初始化的语句是: 。

A)int a( )(3)={ ( 1, 0, 1 ), ( 2, 4, 5 ) } B)int a[2][]={ { 3, 2, 1 }, { 5, 6, 7 } } B)int a[][3]={ { 3, 2, 1 }, { 5, 6, 7 } } D)int a(2)( )={ ( 1, 0, 1 ), ( 2, 4, 5 ) }

9.下面有关形参的说明语句中正确的是: 。

A)形参在被调函数中定义,当被调定义完后形参就将占用内存空间,并将获得值。 B)形参只有在发生函数调用时才会被分配内存空间,才会获得值,且调用结束后又会消失。

C)形参将会在程序编译阶段获得内存空间和值,且在整个程序运行过程中都将保持。 D)以上说法都不正确。

10.以下程序的输出结果是: 。

main( )

{ int I=012, j=12, k=0x12;

printf(“%d,%d,%d\\n”,I, j, k );

A)10, 12, 18 B)12, 12, 12 C)10, 12, 12 D)12, 12, 18 11.以下叙述中不正确的是 。

A) C语言中的文本文件以ASCII码形式存储数据

B) C语言中对二进制位的访问速度比文本文件快 C) C语言中,随机读写方式不使用于文本文件 D) C语言中,顺序读写方式不使用于二进制文件

12.以下程序的运行结果是: 。

main( ) { int n=4; while(n--)

printf (“-”,--n);}

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

13.以下程序的功能是:按顺序读入10名学生的4门课程的成绩,计算出每位学生的平均分并输出,程序如下:

main() {int n,k;

float score,sum,ave; sum=0.0;

for(n=1;n<=10;n++) {for(k=1;k<=4;k++)

{scanf(\ave=sum/4.0;

printf(\} }