湖北汽车工业学院C语言复习题

2026/1/13 6:42:13

1设有定义:float a=2,b=4,h=3;以下c语言表达式中与代数式1/2(a+b)h计算结果不相符的是(B) A、(a+b)*h/2 B (1/2)*(a+b)*h C h/2*(a+b) D(a+b)*h*1/2

2 若有说明:int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是(B) A i=*p B*p=*&j C i=&j D i=**p

3 有以下程序

main()

{ int a=1,b;

for(b=1;b<=10;b++) { if(a>=8) break;

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

printf(\

}程序运行后的输出结果是__A____。 A 4 B 3 C 5 D 6

4. 有下程序:main()

{int a[]={2,4,6,8,10},y=0,X,*P; p=&a[l];for(x=l;x<3;x++) y+=p[x]; printf(\\n,y\: }

程序运行后的输出结果是(C)。 A.10 B.11 C.14 D.15

参考答案: C 本题考查for循环及if语句。当执行到第一个满足(i*i>=20)&&(i*i<=100)这个条件的i出现时,break跳出循环,执行下列的prinff语句。

5 有以下程序

#include main()

{ int i,j;

for(i=3;i>=1;i--)

{ for(j=1;j<=2;j++) printf(\ printf(\ }

}程序的运行结果是__A____。 A 4 5 C 2 3 3 4 3 4 2 3 4 5 B 4 3 2 D 2 3 4 5 4 3 3 4 5

6 有以下程序执行后W结果是;

int fun1(double a) {return a*a;} int fun2(double x,double y) { double a=0,b=0;

a=fun1(x); b=fun1(y);return(int)(a+b);} main()

{ double w, w=fun2(1.1,2.0);.......} 参考答案:5.0

7以下程序的输出结果是___D___。

int f( )

{ static int i=0; int s=1; s+=i; i++; return s; }

main()

{ int i,a=0;

for(i=0;i<5;i++) a+=f( ); printf(\

A 24 B 20 C 25 D 15

8 以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序。 void sort(int a[],int n) {int i,j,t;

for(i=O;i

if(a[i]

main()

{int aa[10]:{1,2,3,4,5,6,7,8,9,10},i; sort(&aa[3],5);

for(i=0;i

程序运行后的输出结果是____C____。

A)l,2,3,4,5,6,7,8,9,10, B)10,9,8,7,6,5,4,3,2,1, C)l,2,3,8,7,6,5,4,9,10, D)l,2,10,9,8,7,6,5,4,3,

答案:C 评析:本题并不是对数组的所有元素进行排序,而是对从a[3]开始往后的4个元素进行排序。

9下面能正确进行字符串赋值操作的语句是 C

A) char s[5]={\C) char *s;s=\D) char *s; scanf(\

10.下面各语句行中,能正是行赋字符串操作的语句行是C A)CHAR ST[4][5]={“ABCDE”};

B)CHAR S[5]={'A','B','C','D','E'}; C)CHAR *S;S=“ABCDE”;

D)CHAR *S;SCANF(“%S”,S);

11已知i、j、k为int型变量,若从键盘输入:1,2,3↙,使i的值为l、j的值为2、k的值为3,以下选项中正确的输入语句是___C ___。 A)scanf(\%2d%2d%2 dtt,&i,&j,&k); B)scanf(\%d %d %d\,&i,&j,&k); C)scanf(\%d,%d,%dfI,&i,&j,&k); D)scanf(\%d,j=%d,k=%d,&i,&j,&k);

答案:C 评析:如果在\格式控制\字符串中除了格式说明以外还有其它字符,则在输入数据时应输入与这些字符相同的字符。

12下列定义变量的语句中错误的是 D

A)double int_; B)int _int; C)char For D)float US$

13若以下选项中的变量已正确定义,则正确的赋值语句是C

A) x1=26.8%3 B) 1+2=x2 C) x3=0x12 (D) x4=1+2=3;

14以下叙述中正确的是(C)

A)break语句只能用于switch语句体中

B)continue语句的作用是:使程序的执行流程跳出包含它的所有循环 C)break 语句只能用在循环体内和switch语句体内

D)在循环体内使用break语句和continue语句的作用相同

15.1以下函数值的类型是___A__ fun(float x)

{ float y;y=3*x-4;return y;}

A)int B)不确定 C)void D)float 知识点:C语言函数的缺省的函数类型

15.2以下函数fun形参的类型是___D__

fun( float x){ float y;y=3*x-4;return y; } A) int B) 不确定 C) void D) float

16下列叙述中正确的是(A)。

A.每个c程序文件中都必须要有一个main函数 B.在C程序中main()的位置是固定的

C.C程序中所有函数之间都可以相互调用,与函数所在位置无关 D.在C程序的函数中不能定义另一个函数

17.设有定义:int a,pa=&a;以下scanf语句中能正确为变量a读入数据的是 A A) scanf(“%d”,pa) ; B) scanf(“%d”,A) ; C) scanf(“%d”,&pA) ; D) scanf(“%d”,pA) ;

18若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是 (C) A)abs(x-y)<10 B)x-y>-10&& x-y<10 C)!(x-y)<-10||!(y-x)>10 D)(x-y)*(x-y)<100

19若变量已正确定义,有以下程序段C int a=3,b=5,c=7; if(a>b) a=b; c=a;

if(c!=a) c=b;printf(\其输出结果是C A) 程序段有语法错 B) 3,5,3 C) 3,5,5 D) 3,5,7

20 以下选项中,非法的字符常量是 (C) a) ‘\\t’ b) ‘\\17’ c)“\\n” d) ‘\\xaa’

21.有以下程序 main()

{ int s=0,a=1,n; scanf(\ do

{s+=1; a=a-2;} while(a!=n);

printf(\

}若要使程序的输出值为2,则应该从键盘给n输入的值是___B___。 A 0 B -3 C -5 D -1

22.有以下程序main(){ int i, j; for(i=1;i<4;i++)

{ for(j=i;j<4;j++) printf(\ printf(\程序运行后的输出结果是 B 。 A 1*1=1

1*2=2 2*2=4

1*3=3 2*3=6 3*3=9 B 1*1=1 1*2=2 1*3=3 2*2=4 2*3=6 3*3=9

C 1*1=1 1*2=2 1*3=3 2*1=2 2*2=4 3*1=3 D 1*1=1

2*1=2 2*2=4

3*1=3 3*2=6 3*3=9


湖北汽车工业学院C语言复习题.doc 将本文的Word文档下载到电脑
搜索更多关于: 湖北汽车工业学院C语言复习题 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219