黑龙江省职高对口升学C语言编程基础模拟试卷

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

⿊龙江省职⾼对⼝升学C语⾔编程基础模拟试卷⿊龙江省职⾼对⼝升学C语⾔编程基础模拟试卷
⼀、单项选择题:共20⼩题,每⼩题2分,共40分。

1、在C语⾔程序中,main()函数的位置()。

A、必须作为第⼀个函数
B、必须放在⽤户⾃定义函数之后
C、可以任意
D、必须作为最后⼀个函数
2、C语⾔提供的合法关键字是()。

A、AUTO
B、short
C、uzsigned
D、comnt
3、在C语⾔中,下列()为合法的字符常量。

A、’\084’
B、’/x45’
C、”ab”
D、”?”
4、在C语⾔中,以下四种运算符中,优先级最⾼的是()。

A、>=
B、&&
C、+=
D、!=
5、在C语⾔中,表达式18/4*sqrt(4.0)值的数据类型是()。

A、int
B、float
C、long
D、double
6、在C语⾔中,表达式sizeof(long)的值为()。

A、1
D、8
7、在C语⾔中,若以定义x和y是double型变量,且x=1,则表达式y=x+3/2的值是()。

A、1
B、1.5
C、2.0
D、2.5
8、在C语⾔中,设x为整型变量,且x=8,则表达式x+=2+x%3的值为()。

A、11
B、12
C、6
D、4
9、在C语⾔中,设a、b和c都是int型变量,且a=3,b=4,c=5,则下⾯表达式中,值为0的表达式是()。

A、’n’&&’b’
B、a<=b
C、a||b+c&&b-c
D、!(a
10、在C语⾔中,设a、b为int型变量,且b=5,则执⾏以下语句后,变量a的值为()。

a=2+(b+b++,b+8,++b);
A、13
B、14
C、8
D、9
11、在C语⾔中,如果a=1,b=2,c=3,d=4,则条件表达式a
A、1
B、2
C、3
D、4
12、在C语⾔中,已知i,j,k为int型变量,若从键盘输⼊:4 5 6(回车),要使i的值为4,j的值为5,k的值为6,以下选项中正确的输⼊语句是()。

A、scanf(“%2d%2d%2d”,i,j,k);
B、scanf(“%d%d%d”,&i,&j,&k);
C、scanf(“%d,%d,%d”,&i,&j,&k);
D 、scanf(“i=%d ,j=%d ,k=%d”,&i,&j,&k);
13、在C 语⾔中,设a 为int 型变量,要求当a 的值为偶数时,表达式的值为“真”,a 的值为奇数时,表达式的值为“假”,以下不满⾜要求的表达式是()。

A 、a%2==0 B 、!(a%2==1) C 、a%2 D 、!(a%2)
>=<-)0.(..........1)0(..........
0)0.......(
1x x x B 、y=
>=-<)0.........(0)0......(
1)0........(1x x x C 、y=
>=-<)0.......(1)0....(1)0.......(0x x x
D 、y=??
>-=<)0.......(1)0.........(
1)0........(0x x x 15、以下C 语⾔程序的输出结果是()。

main()
{int x=12,y=10,z=0; if(x
{if(y<0) z=0; } else z+=2; printf(“%d”,z); } A 、2 B 、1
C 、3
D 、0
16、以下C 语⾔程序的输出结果是()。

main() {int c,d;
for(c=1,d=1;c<=100;c++) {if(d>=20) break;
if(d%3==1) {d+=3;countinue;} d=-5; } printf(“%d”,c); } A 、6 B 、8
C 、10
D 、12
17、有以下C 语⾔程序段:
main() {int i=0,j=0; while(i++<5) {j=0; do
{printf(“*”);}
while(++j<4); }
} 则执⾏上⾯的程序后,输出的“*”的个数是()。

A 、15 B 、12 C 、20 D 、25 18、在C 语⾔中定义如下数组: int b[4][3]= {{1},{3,2},{4,5,6},{0}}; 则数组元素b[2][2]的值为()。

A 、6
B 、5
C 、0
D 、2
19、在C 语⾔中,对下列数组初始化中不正确的是()。

A 、char a[]=”ABCDE”; B 、char a[5]={65,66};
C 、char a[5]={‘A’,’B’,’C’};
D 、char a[5]=”ABCDEF”;
20、在C 语⾔中,有如下变量的定义,则()不是对a 数组元素的正确引⽤,其中0<=i<10。

int a[10]=
{0,1,2,3,4,5,6,7,8,9},*p=a; Aa[p-a] B 、*&a[i] C 、*(a+i) D 、*p[i]
22、在C 语⾔中,定义⼀个值为3.14159,名为pi 的符号常量的命令格式为。

23、在C 语⾔中,表达式!4+2>=2&&15%4+2的值为。

24、在C 语⾔中,单精度型(float )变量的有效数字为。

25、在C 语⾔中,设整型变量a 的初值为5,则表达式a+=a-=a*a 的值为。

26、数学式sin30。

×b
a b
a -+写成C 语⾔表达式是。

27、在C 语⾔中,允许函数直接或间接地调⽤⾃⼰,这种调⽤⽅式称为函数的。

28、在C语⾔中,若已定义如下的数组:
float a[10]={12,17.5,22.0};则数组a中的各元素占⽤的存储空间总共为个字节。

29、在C语⾔中,已经定义了⼀个⽂件指针变量fp,并指向某⼀打开的⽂件,则关闭该⽂件的语句是。

30、根据程序功能,将C语⾔程序补充完整:程序功能为:输⼊任意⼀个不超过4位的正整数,逆序输出该整数。

如输⼊2374,输出4732;输⼊270,输出72。

main()
{int n,s= ;
scanf(“%d”,&n);
while(n)
{s= +n%10;
n= ;
}
printf(“%d”,s);
}
31、根据程序功能,将C语⾔程序补充完整。

下⾯程序功能是:输⼊⼀组学⽣的姓名和成绩,根据成绩排出名次,并按下⾯所⽰的格式输出数据。

排了名次的成绩单如下:
名次姓名成绩
1 张⼩兵 98
……
main()
{char name[40][10],str[10];
int score[40],num,i,j,t;
clrscr();
printf(“输⼊学⽣⼈数”);
scanf(“%d”,&num);
for(i=0;i
{printf(“输⼊第%d位学⽣的姓名和成绩:”,i+1);
scanf(“”,name[i],&score[i]);}
for(i=0; ;i++)
for(j= ;j
if(score[j]>score[i])
{t=score[i];
;
;
strcpy(str,name[i]);
;
;
printf(“排了名次的成绩单如下:\n”);
printf(“%8s%12s%8s\n”,”名次”,”姓名”,”成绩”);
for(i=0;i
printf(“%8s%12s%8d\n”,i+1,;score[i]);}
三、判断题(本⼤题共10⼩题,每⼩题2分,共20分)请在正确的叙述后打“√”,错误的叙述后打“×”。

()32、在C语⾔中,所有的标识符都必须采⽤⼩写。

()33、在C语⾔中,函数是由变量说明部分和可执⾏部分两部分构成,当函数体被省略时,该函数被称为空函数。

()34、C语⾔程序总是从第⼀个定义的函数开始执⾏。

()35、在C语⾔中,在头⽂件stdio.h中定义了结构体类型FILE,⽤它可以定义⽂件指针,如:FILE *fp;
()36、编写程序时应尽量少写注释,以提⾼编程效率。

()37、在C语⾔中,当数组名作为实参时,则传递给形参的是该数组的⾸地址。

()38、在C语⾔中,函数调⽤时实参与形参的个数应尽量相同,类型应⼀致。

()39、在C语⾔中,while语句和do-while语句的循环体都可能⼀次也不执⾏。

()40、在C语⾔中,getchar()函数是标准I/O库中的函数,在使⽤它时必须程序前加上预编译命令#include。

42、以下C语⾔程序后输出的结果是。

main()
{int i=0,j;
for(j=0;j<4;j++)
switch(j)
{case 1:i+=1;
case 2:i+=2;
case 3:i+=3;}
printf(“%d”,i);}
43、以下C语⾔程序的输出结果是。

main()
{int n=1;
while(n<=20)
{n+=4;if(n%3==0) printf(“%4d”,n);}
}
44、下列C语⾔程序的运⾏结果是。

main() {int x=3;
do
{printf(“%3d”,x-=2);}
while(!(--x));}
45、以下程序的输出结果
是。

main()
{int a=1,b=15;
do
{a+=3;b-=a;}
while(b>=0);
printf(“a=%d,b=%d”,a,b);}
46、以下C语⾔程序的输出结果
是。

main()
{int m=36,n=48,r;
if(m
{m=n;n=r;r=m%n;}
printf(“%d”,n);}
47、以下C语⾔程序的输出结果是。

main() {int i=2,p;
p=f(i,i+1);
printf(“%d”,p);
}
int f(a,b)
int a,b;
{int c;
if(a>b) c=1;
else
if(a==b) c=0;
else c=-1;
return(c);}
48、以下C语⾔程序的输出结果
是。

main()
{int a=30,b=20,n1,n2;
funcl(a,b,&n1,&n2);
printf(“%d,%d”,n1,n2);
}
funcl(int x,int y,int *m,int *n)
{*m=x+y;*n=x-y;}
49、以下C语⾔程序的输出结果
是。

int x,y;
func()
{int a=25,b=10,x,y;
x=a+b;y=a-b;}
main()
{int a=9,b=5;
x=a+b;y=a-b;
50、以下C语⾔程序的输出结果
是。

main()
{int i,j,r,c,m;
static int a[3][3]={100,200,250,27.73,-30,-760,2,5}; m=a[0][0];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(a[i][i]
{m=a[i][j];r=I;c=j;}
printf(“%d,%d,%d”,m,r,c);
}
51、若输⼊整数10以下程序的输出结果是。

main()
{int a,e[10],c,i=0;
printf(“请输⼊⼀个整数:\n”);
scanf(“%d”,&a);
while(a!=0)
{c=sub(a);a=a/2;e[i]=c;i++;}
for(;i>0;i--)
printf(“%d”,e[i-1]);}
sub(int a)
{int c;
c=a%2;
return c;
}
五、程序设计题(请⽤C语⾔按要求编写程序,52题、53题各13分,54题14分,共40分)
52、显⽰斐波那契数列1,1,2,3,5,8,13……前20项,要求每⼀⾏显⽰5项。

(该数列规律为:第1,2项为1,从第3项开始每项为前两项之和)。

53、输⼊10个实数,并⽤数组保存,要求按输⼊顺序输出这些数,并求所有数的平均值。

54、⽤递归的⽅法编写函数fun()求n!。

(n!=1*2*3*…*n)。

要求:输⼊整数n和输出结果
由主函数完成。

参考答案
⼀、单项选择题(每题2分,共40分)
1、C
4、A
5、D
6、C
7、C
8、B
9、D 10、D
11、A 12、B 13、C 14、C 15、A
16、B 17、C 18、A 19、D 20、D
⼆、填空题(共11⼩题,每空2分,共40分)
21、 \ 22、#define pi 3.14159 23、1
24、7 25、-40
26、sin(30*3.1416/180)*(a+b)/(a-b)注:∏的值可由评券⼈⼤体掌握。

27、递归调⽤28、40 29、fclose(fp);
30、0 s*10 n/10
31、%s%d i
score[j]=t strcpy(name[i],name[j])
strcpy(name[j],str) name[i]
三、判断题(共10⼩题,每题2分,共20分)
32、错33、错34、错35、对36、错
37、对38、对39、错40、对 41、错
四、写出程序运⾏结果(共10⼩题,每题6分,共60分)
42、14 43、9 21 44、1 -2
45、a=10,b=-6 46、12 47、-1
48、50,10 49、14,4 50、-760,2,0
51、1010
五、程序设计题(52、53题各13分,54题14分,共40分)
52、#include………………..(1分)
main()
{int a=1,b=1,c,i,n=2;…(2分注:变量名可任意)
printf(“%5d%5d”,a,b);..(2分注:%5d
指定宽度的值可任意)
for(i=3;i<=20;i++)……..(1分)
{c=a+b;a=b;b=c;……(3分)
}
}
53、#inc lude………(1分)
main()
{float a[10],sum=0;… (2分注:变量名、
数组名可任意)
int i;…………………….(1分)
for(i=0;i<10;i++)……...(1分)
{scanf(“%f”,&a[i]);.. (2分)
sum=sum+a[i];}…...(2分)
for(i=0;i<10;i++)………. (2分)
printf(“%f”,a[i]);…...(1分)
printf(“average=%f”,sum/10); …(1分)
注:或printf(“%f”,sum/10.0)
}
54、#include
long fun(int n)
{long y;
if(n>1)................. (4分)注:加下划线
的4句共4分,也可⽤语句:
y=n*fun(n-1);
else if(n==1)y=1;
y=1; else y=n*fun(n-1);
r eturn y;……….. (1分)
}
main()
{int n;…………. (1分)
long p;……. (1分)注:若main()写在程序开头部分,必须有语句:lpng fun();声明⾃定义函数的类型。

scanf(“%d”,&n);……(1分)
p=fun(n);……….….. (1分)
printf(“%ld”,p);……. (2分)
} 注:评卷⼈可依据参考答案酌情掌握如果只定义了⼀个变量,主函数也可按
以下⽅法编写。

main()
printf(“%ld”,fun(n));}…(4分)。

相关文档
最新文档