admin 管理员组

文章数量: 887032


2023年12月22日发(作者:qq自定义在线代码)

2018级计算机科学与技术《C语言程序设计》考试试题

一、单项选择题(每题2分,共20分)

1、以下叙述正确的是( )

A)C语言的源程序不必通过编译就可以直接运行。

B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。

C)C语言源程序经编译形成的二进制代码可以直接运行。

D)C语言中的函数不可以单独进行编译。

2、一个C语言的源程序中( )

A)必须有一个主函数 B)可能有多个主函数

C)必须有除主函数外其它函数 D)可以没有主函数

3、以下不能定义为用户标识符的是( )

A)scanf B)Void C)_3com D)int

4、若以下选项中的变量已正确定义,则正确的赋值语句是( )

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

5、设有定义:float a=2,b=4,h=3;以下C语言表达式中与代数式的是( )

A)(a+b)*h/2 B)(1/2)*(a+b)*h C)(a+b)*h*1/2 D)h/2*(a+b)

6、C语言中用于结构化程序设计的3种基本结构是( )

A)顺序结构、选择结构、循环结构 B)if、switch、break

C)for、while、do-while D)if、for、continue

7.在while(!x)语句中的!x与下面条件表达式等价的是( )

A) x!=0 B) x==1 C) x!=1 D) x==0

8、有以下程序:

#include

void main(){

int i=1,j=1,k=2;

if( (j++||k++)&&i++ )

printf(“%d,%d,%dn”,i,j,k);}

执行后的输出结果是( )

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

9、有以下程序:

#include

void main(){

int i,s=0;

for(i=1;i<10;i+=2)

s+=i+1;

printf(“%dn”,s);}

程序执行后的输出结果是( )

A)自然数1~9的累加和 B)自然数1~10的累加和

C)自然数1~9中奇数之和 D)自然数1~10中偶数之和

10、有以下函数定义:

void fun(int n,double x){……}

若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是( )

A)fun(int y,double m); B)k=fun(10,12.5);

C)fun(x,n); D)void fun(n,x);

二、填空题(每空2分,共20分)

1、C语言描述“x和y都大于或等于z”的表达式是: 。

2、函数定义时涉及的基本要素是: 、 、 。

3、C语言可以用来实现循环的结构化语句是: 、 、 。

4、判断整型变量a即是5又是7的整数倍的C语言表达式是: 。

5、 若x和n都是int型变量,且x和n的初值都是6,则计算表达式x+=n++后,x的值为: ,n的值为: 。

1(ab)*h的计算结果不相符.2

1页 A卷 第

三、写出下列程序的运行结果(每题5分,共15分)

1、程序1

#include

void main() {

int a=12,b=12;

printf(“%d,%dn”,--a,++b); }

程序执行后的输出结果是:

2、程序2

#include

void main() {

int a=5,b=4,c=3,d=2;

if(a>b>c)

printf(“%dn”,d);

else if((c-1>=d)==1)

printf(“%dn”,d+1);

else

printf(“%dn”,d+2);

}

程序执行后的输出结果是:

3、程序3

#include

void main()

{

int x=0,y=5,z=3;

while(z-->0&&++x<5)

y=y-1;

printf(“%d,%d,%dn”,x,y,z);

}

程序执行后的输出结果是:

四、编程题(每题9分,共45分)

1、编写一个程序。实现输入一个小写字母,程序输出它对应的大写字母。(提示:小写字母的ASCII码值比大些字母大32)

2、编写一个程序,计算100+101+102+…+300的值。

3、已知学生成绩(100分为满分)与等级的对应关系为:

成绩(grade) 等级

90<=grade<=100 A

80<=grade<90 B

70<=grade<80 C

60<=grade<70 D

grade<60 E

请你编写一个程序,要求:输入学生成绩,输出学生成绩对应的等级。(提示:使用switch….case语句)

4、求100-999之间的回文素数之和。

(1)回文素数是一个素数,且从左向右和从右向左读是相同的,如:101,131,181是回文素数;

(2)要求使用循环实现。

5、若一个口袋中放有12个球,其中有3个红色的,3个白色的和6个黑色的,从中任取8个球,求共有多少种不同的颜色搭配。如:2个白色球和6个黑色球;1个红色球、3个白色球和4个黑色球;

A卷 第

2页

《C语言程序设计》答案

一、单项选择题(每题1分,共20分)

1、B 2、A 3、D 4、C 5、B 6、A 7、D 8、C 9、D 10、C

二、填空题(每空2分,共20分)

1、 x>=z && y>=z

2、函数名、形式参数、函数体

3、 while 、 do-while 、for

4、a%5==0 && a%7==0

5、12,7

三、写出下列程序的运行结果(每题5分,共15分)

1、11,13

2、3

3、3,2,-1

四、编程题(每题9分,共45分)

1、程序代码如下:

#include

void main()

{

char ch;

scanf("%c",&ch);

printf("%cn",ch-32);

}

2、程序代码如下:

#include

void main()

{

int i,sum=0;

for (i=100;i<=300;i++)

sum+=i;

printf("sum=%dn",sum);

}

3、程序代码如下:

#include

void main()

{

int grade;

scanf("%d",&grade);

switch(grade/10)

{

case 10:

case 9:

printf("An");

break;

case 8:

printf("Bn");

break;

case 7:

printf("Cn");

break;

case 6:

printf("Dn");

break;

default:

printf("En");

break;

}

}

4、程序代码如下:

#include

main()

{ long s=0;

int a,b,i,j;

for(i=100;i<1000;i++)

{a=i/100;

b=i%10;

if(a==b)

{for(j=2;j<=i/2;j++)

if(i%j==0) break;

if(j>i/2) s=s+i;

}

}

printf(“%ld”,s);

}

5、程序代码如下:

#include

main()

{int n;

int a,b,c;

for(a=0;a<=3;a++)

for(b=0;b<=3;b++)

for(c=0;c<=6;c++)

if(a+b+c==8) n++;

printf(“%d,%d,%d”,a,b,c);

}

A卷 第

3页


本文标签: C语言 定义 函数 程序 输出