文档库 最新最全的文档下载
当前位置:文档库 › C语言程序设计模拟试卷1

C语言程序设计模拟试卷1

C语言程序设计模拟试卷1
C语言程序设计模拟试卷1

《C语言程序设计》模拟试卷1

考试时间:100分钟考试方式:闭卷

序号

一、选择题(本题共40分,每小题2分)

1、一个C程序的执行是从()

A.本程序的main函数开始,到main函数结束

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束

D.本程序文件的第一个函数开始,到本程序main函数结束

2 以下选项中可以作为C语言中合法的字符串()

A.How old are you

B.”china”

C.‘hello’

D. $abc$

3、一个C语言程序是由()

A.一个主程序和若干子程序组成

B.函数组成

C.若干过程组成

D.若干子程序组成

4、以下选项中与 k=n++完全等价的表达式为()

A.k=n,n=n+1

B.n=n+1,k=n

C.k=++n

D.k+=n+1

5、在C语言中要求参加运算的数必须是整数的运算符是()

A. /

B. !

C. %

D.==

6、在C语言的if语句中,用作判断的表达式为()

A.关系表达式

B.逻辑表达式

C.算术表达式

D.任意表达式

7、以下关于switch语句和break语句的描述中( )是正确的

A.在Switch语句中必须使用break语句

B.break语句只能用于switch语句中

C.在switch语句中,可以根据需要使用或者不使用break语句

D.break语句是switch语句的一部分

8、有以下程序段

Int x=0;

While (k=1) k++;

While循环执行的次数是( )

A.无限次

B.有语法错误,不能执行

C.一次也不执行

D.执行1次

9、若变量均已正确定义并赋值,以下合法的C语言赋值语句是( )

A. x=y==5

B. x=n%2.5;

C. x+n=I

D. x=5=4+1

10、若I, j 已定义为int型变量,则以下程序段中内部循环体的执行

次数是( )

For(i=5; i;i--)

For(j=0; j<4;j++) {……}

A.20

B.24

C.25

D.30

11、以下能正确定义一维数组的选项是()

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

B. char a[5]={0,1,2,3,4,5};

C. char a={‘A’,’B’,’C’};

D. int a[5]=”0123”;

12、C 语言中while 和do-while循环的主要区别是()

A do-while 的循环体至少无条件执行一次

B. While的循环控制条件比do-while的循环控制条件严格

C. while 的循环体至少无条件执行一次

D. Do-while的循环体不能是复合语句

13、C语言中数组下标的下限是()

A.1

B.0

C.视具体情况

D.无固定下限

14、若变量a是int类型,并执行了语句:a=‘A'+1则正确的叙述是()

A.a的值是字符C

B.a的值是浮点型

C.不允许字符型和浮点型相加

D.a的值是字符‘A’的ASCII值加上1。

15、设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为()

A.4

B.16

C.32

D.52、

16、下列标识符中不合法的是()

A. s_name

B. _e

C. fox

D. 3DS

17、下列运算符其优先级最高的是()

A. ||

B. &&

C. +

D. =

18、以下叙述中正确的是()

A. C程序中注释部分可以出现在程序中任意合适的地方

B.花括号"{"和"}"只能作为函数体的定界符

C.构成C程序的基本单位是函数,所有函数名都可以由用户命名

D.分号是C语句之间的分隔符,不是语句的一部分

19、以下选项中非法的表达式是()

A. 0<=x<100

B.i=j==0

C. (char)(65+3)

D.x+1=x+1

20、以下不能正确定义二维数组的选项是()

A.int a[2][2]={{1},{2}};

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

C.int a[2][2]={{1},2,3};

D.int a[2][]={{1,2},{3,4}};

二、阅读程序,选择一个正确的选项(本题共30分,第1、2题各9分,第3题12分,每空3分)

1、有如下程序

main()

{ int x=1,a=0,b=0;

scanf("%d",&x);

switch(x){

case 0: b++;

case 1: a++;

case 2: a++;

}

printf("a=%d,b=%d\n",a,b);

}

(1) 程序运行时,输入1,输出结果中a的值是( )

A. 1

B. 2

C. 3

D. 4

(2) 程序运行时,输入1,输出结果中b的值是( )

A.0

B. 1

C. 2

D. 3

(3) 程序运行时,输入2,输出结果中a的值是( )

A.0

B. 1

C. 2

D. 3

2、有如下程序

main()

{ int a=2,b=-1,c=1;

if(a

c=0;

else c++;

printf("%d\n",c);

}

(1)该程序的输出结果是()

A. 0

B. 1

C. 2

D.3

(2)将第3行改成“if(a>b)”该程序的输出结果是()

A. 0

B. 1

C. 2

D.3

(3)将第3行改成“if(a

A. 0

B. 1

C. 2

D.3

3、有以下程序

main()

{

int x=1, y;

scanf("%d",&y);

for (x=1;x<=100;x++)

{

if(y>=20) break;

if(y%3==1)

{

y+=3;

continue; /* 第11行 */

}

y-=5;

}

printf(“%d\n”,x);

}

(1) 程序运行时,输入21,输出结果是( )

A. 0

B. 1

C. 2

D.3

(2) 程序运行时,输入19,输出结果是( )

A. 0

B. 1

C. 2

D.3

(3) 程序运行时,输入1,输出结果是( )

A. 5

B. 6

C. 7

D.8

(4)将第11行删除后,程序运行时,输入1,输出结果是( )

A. 0

B. 1

C. 100

D.101

三、程序填空(本题共30分,每空2分)

1、以下程序的功能是:将输入的正整数按逆序输出。例如,若输入135则输出531

#include

main()

{

int s;

① ;

printf("Enter a number: ");

scanf("%d",&n);

printf("Output: ");

do

{

s=n%10;

printf("%d",s);

② ;

}

while(n!=0);

printf("\n");

}

2、用do-while循环语句实现求1+3+…+97+99,并输出结果。

#include

main()

{ int i,sum=0;

i=1 ;

do

{

sum=sum+i ;

① ;

} while( ② );

printf("%d\n",sum);

}

3、以下程序的功能是:求出数组x中各相邻两个元素的和并依次存放到a数组中,然后输出。请填空。

#include

void main()

{

int x[10],a[9],i;

for(i=0;i<10; ① )

scanf("%d",&x[i]);

for( ② ;i<10;i++)

a[i-1]=x[i]+ ③ ;

for(i=0;i<9;i++)

printf("%d ",a[i]);

printf("\n");

}

4、下面的程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变。请填空

#include

#include

main()

{

char a[]="clanguage",t,m;

int i, j , k;

① ;

printf("%d\n",k);

for(i=0;i<=k-2;i+=2)

{

m=i;

for(j=i+2;j<=k; ② )

if(a[m]>a[j]) m=j;

if(③)

{

t=a[i];

a[i]=a[m];

④ ;

}

puts(a);

printf("\n");

}

}

5、用do-while循环语句实现求1+2+…+99+100,并输出结果。#include

main()

{ int i,sum=0;

① ;

do

{

② ;

i=i+1;

} while(i<=100);

printf("%d\n",sum);

}

6、下面程序的功能是输入整数n,求n!,即求1×2×3×…×n #include

main()

{

int i,s,n;

① ;

printf("Enter n:");

scanf("%d",&n);

for(i=1; i<=n ;i++)

{

② ;

}

printf("s=%d\n",s);

}

模拟试卷1参考答案

一、1-10 ABBAC BCAAA

11-20DABDC DCADD

二、1、 B A B

2、 C A B

3、 B C D D

三、1、int n n=n/10

2、i=i+2 i<=99 (i<100|i<=100|i<101)

3、i++ i=1 x[i-1]

4、k=strlen(a)j=j+2m!=i a[m]=t

5、i=1 sum=sum+i

6、s=1s= s*i

相关文档