四套模拟题.docx

上传人:b****2 文档编号:2238349 上传时间:2022-10-28 格式:DOCX 页数:30 大小:35.59KB
下载 相关 举报
四套模拟题.docx_第1页
第1页 / 共30页
四套模拟题.docx_第2页
第2页 / 共30页
四套模拟题.docx_第3页
第3页 / 共30页
四套模拟题.docx_第4页
第4页 / 共30页
四套模拟题.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

四套模拟题.docx

《四套模拟题.docx》由会员分享,可在线阅读,更多相关《四套模拟题.docx(30页珍藏版)》请在冰豆网上搜索。

四套模拟题.docx

四套模拟题

一、   选择题(15个,每个2分,共30分)

二、   程序填空(分析结果,5个,每个4分,共20分)

三、   判断(10个,每个2分,共20分)

四、   程序设计(3个,分别是7分、8分、15分)

程序设计题目考察范围:

1·冒泡

2·矩阵求最大、小值

3·累加、累乘

4·判断素数

5·最大公约数、最小公倍数

6·数组产生随机数,求数组元素和及平均值、最值

7·百钱百鸡

8·测试字符是空格、数字、字母还是其他字符

9·求三角形面积

10·求水仙花数

11·百分制成绩与五级成绩的相互转换

12·Fibonacci数列(兔子数列)

13·九九乘法表

【一】

一:

选择题(本题共15小题,满分30分)

(1).以下叙述正确的是B

  A)C语言程序是由过程和函数组成的

  B)C语言函数可以嵌套调用,例如:

fun(fun(x))

  C)C语言函数不可以单独编译

  D)C语言中除了main函数,其他函数不可作为单独文件形式存在

  

(2)以下C语言用户标识符中,不合法的是D

  A)_1

  B)AaBc

  C)a_b

  D)a—b

 (3)若有定义:

doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是C

  A)a=a++,i++;

  B)i=(a+k)<=(i+k);

  C)i=a%11;

  D)i=!

a;

(4)以下程序的输出结果是(B)。

main()

{intx=2,y=-1,z=2;

if(x

if(y<0)z=0;

elsez=z+1;

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

}

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

(5).设inta=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是(C)

A.9,19B.9,20

C.10,19D.10,20

(6)有以下程序

#include"stdio.h"

main()

{inti,j,m=1;

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

{for(j=3;j>0;j--)

{if((i*j)>3)break;

m*=i*j;

}

}

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

}  

程序运行后的输出结果是A

  A)m=6

  B)m=2

  C)m=4

  D)m=5

(7)有以下程序D

#include"stdio.h"

main()

{inta=1;intb=2;

for(;a<8;a++){b+=a;a+=2;}

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

}

  程序运行后的输出结果是

  A)9,18

  B)8,11

  C)7,11

  D)10,14

(8)以下关于return语句的叙述中正确的是b

  A)一个自定义函数中必须有一条return语句

  B)一个自定义函数中可以根据不同情况设置多条return语句

  C)定义成void类型的函数中可以有带返回值的return语句

  D)没有return语句的自定义函数在执行结束时不能返回到调用处

(9)下列选项中,能正确定义数组的语句是D

  A)intnum[0..2008];

  B)intnum[];

  C)intN=2008;

  intnum[N];

  D)#defineN2008

  intnum[N];

(10).有以下程序段

inta[10]={1,2,3,4,5,6,7,8,9,10},*p,b;

p=&a[3];

b=p[5];

b中的值是(D)

A.5B.6C.8D.9

  (11)有以下程序

#include"stdio.h"

  main()

  {inta[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0;

  for(i=0;i<5;i++)s=s+a[b[i]];

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

  }

  程序运行后的输出结果是c

  A)6

  B)10

  C)11

  D)15

(12)有以下程序

  #include"stdio.h"

#defineSUB(a)(a)-(a)

  main()

  {inta=2,b=3,c=5,d;

  d=SUB(a+b)*c;

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

  }

  程序运行后的输出结果是C

  A)0

  B)-12

  C)-20

  D)10

 (13)有以下程序

  #include"stdio.h"

  main()

  {inta=2,b=2,c=2;

  printf("%d\n",a/b&c);

  }

  程序运行后的输出结果是a

  A)0

  B)1

  C)2

  D)3

(14)下面程序段的运行结果是(A)

#include

main()

{inta=1;intb=2;intc=2;intt;

while(a

{t=a;a=b;b=t;c--;

}

printf("%d,%d,%d",a,b,c);

}

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

(15)有以下程序

#include"stdio.h" 

main()

{ int c=0,k;

  for(k=1;k<3;k++)

    switch(k)

    { default:

c+=k;

      case 2:

c++;break;

      case 4:

c+=2;break;

    }

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

}

程序运行后的输出结果是A

A)3

B)5

C)7

D)9

二填空题(本题共4小题,满分20分)

1.(4分)以下程序运行结果是:

X=8

#include

main()

{

inti,j,X=0;

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

{

X++;

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

{

if(j%2)continue;

X++;

}

X++;

}

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

}

2.(4分)以下程序运行结果是:

x=10

0

1

2

3

#include

voidfun1(intx)

{

x=20;

}

voidfun2(intb[4])

{

intj;

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

{

b[j]=j;

}

}

main()

{

intx=10;

inta[4]={1,2,3,4},k;

fun1(x);

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

fun2(a);

for(k=0;k<4;k++)

{

printf("%d\n",a[k]);

}

}

3.(4分)以下程序运行时输入:

123456789↙

则程序运行结果是:

66

#include

main()

{

intx,y;

scanf("%2d%*4s%2d",&x,&y);

printf("%d",y-x);

}

4.(8分)以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。

例如,输入整数5时(注意:

n不得大于10),程序运行结果如下:

ABCDE

FGHI

JKL

MN

O

请填空完成该程序。

#include

intmain()

{

inti,j,n;charch='A';

scanf("%d",&n);

if(n<11)

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

{for(j=1;j<=n-i+1;j++)

{printf("%2c",ch);

ch++;

}

printf("\n");

}

}

elseprintf("nistoolarge!

\n");

printf("\n");

return0;}

三:

判断题(本题共10小题,满分20分)

1.break是结束本次循环,而continue是结束所有的循环×

2.在C语言中,变量不区分大小写×

3.不同的函数中可以使用相同的变量名。

(√)

4.形式参数是局部变量。

(√ )

5.若用数组名作为函数的实参,传递给形参的是数组第一个元素的值。

(×)

6.c语言是低级语言×

7.c语言中,每个函数都必须要有一个且只有一个main函数×

8.C语言中,整形常数表示的方法有3种√

9.对于开辟一个静态变量,我们没有必要对它进行初始化×

10.假定x和y为double型,则表达式x=2,y=x+3/2的值是3×

四(本题共2小题,满分30分)

编程题

1.规定一个工人工作时间每个月160小时,每小时工资为5元,如果加班的话,每小时增加4元,请编程计算并打印此工人一个月的工资,要求由键盘输入工作时间(14分)。

参考答案:

//2分包括标识符命名、缩进等代码风格

#include

main()

{

intt,salary;//2分

printf("Pleaseinputthetime:

\n");

scanf("%d",&t);//2分

if((t<0)||(t>744))

//1分一个月超过31天每天24小时,考虑到最大最小范围判断,而且合理即可

{

printf("Error,Thetimeyouenteredisbeyond

scope!

\n");

return;

}

if(t<=160)//2分ifelse结构正确

salary=t*5;//2分

else

salary=160*5+(t-160)*9;//2分

printf("Thesalaryis:

%d\n",salary);//2分

}

2.输入20个学生的成绩,求出其中大于平均成绩学生的人数,并对20名学生成绩按从高到低进行排序。

//缩进、空格、空行、标识符命名等编程规范2分

#include

main()

{

intp=20,i,k=0,j;//2分类型错扣1分,没初始化扣1分

floatave,a[20],t,sum=0;

printf("Pleaseinputthescoreofthestudents:

\n");

for(i=0;i

scanf("%f",&a[i]);

for(i=0;i

sum=sum+a[i];

ave=sum/p;//1分

for(i=0;i

{

if(a[i]>ave)

k++;

}

for(i=0;i

for(j=1;j

if(a[j-1]

{

t=a[j-1];a[j-1]=a[j];a[j]=t;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 军事政治

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1