2022年河北专接本计算机模拟试卷
宋丽丽 希赛网 2022-01-04
C 语言程序设计试卷
(考试时间:75 分钟)
(总分:150 分)
一、单项选择题(本大题共 20 小题,每小题 2 分,共 40 分。)
1.若已定义”int a[3][4],(*p)[4];”下列赋值表达式中( )是正确的。
A.p=*a
B.p=a[1]
C.p=*a+2
D.p=a+2
2.下列程序的输出结果是 16.00,则划线处应填()。
main()
{ int a=9,b=2;
float x=_______,y=1.1,z;
z=a/2+b*x/y+1/2;
printf(“%5.2fn”,z);
}
A. 16.00
B. 13.2
C. 9
D. 6.6
3.以下字符串赋初值的方式不正确的是( )。
A.char *str=”string”;
B.char *str;str=”string”;
C.char str[]={‘s’,’t’,’r’,’i’,’n’,’g’};
D.char str[7]={‘s’,’t’,’r’,’i’,’n’,’g’};
4.设有结构体类型定义如下
srtuck student
{
int num;
char name[20];
char sex;
int age;
} stu2[3];
对 stu2 不正确的操作是( )
A.stu2[0].sex=’M’;
B.stu2[1].age=stu2[0].age+2;
C.scanf(“%d”,stu2[2].num);
D.printf(“%s”,stu2[1].name);
5.下列程序执行后输出结果是( )
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
6.void main()
{
int i=0,x=0,s=0;
for(;;)
{
if(i==3||i==5) continue;
if (i==6) break;
i++;
s+=i;
}
printf(“%dn”,s);
}
程序运行后的输出结果是(
)
A.10
B.13
C.21
D.程序进入死循环
7.以下程序的输出结果是( )
#define f(x) x*x
void main ()
{
int a=6,b=2,c;
c=f (a)/f(b);
printf (“%dn”,c) ;
}
A.9
B. 6
C.36
D.18
8.main()
{
char a[20]=”ABCD EFG ”,b[]=”IJK”;
strcat(a,b);
printf(“%sn”,a);
}
程序的输出结果是( )
A.ABCDE FG IJK
B.ABCDIJK
C.IJK
D.EFGIJK
9.以下不能将 s 所指字符串正确复制到 t 所指存储空间的是( )
A.while(*t=*s){t++;s++;}
B.for(i=0;t[i]=s[i];i++);
C.do{*t++=*s++;)while(*s);
D.for(i=0,j=0;t[i++]=s[j++];];
10.void fun(char*w,int m)
{
char s,*pl,*p2;
p1=w;
p2=w+m-1;
while(pl<p2)
{
s=*p1;
*pl=p2;
*p2=s;
p1++;
p2–;
}
}
main()
{
chara[]=”123456″;
fun(a,strlen(a));
puts(a);
}
程序的输出结果是( )
A.654321
B.116611
C.161616
D.123456
11.main()
{
char *s={“abe”};
do
{
printf(“%d”,*s%10);
++s;
}
while(*s);
}
程序的输出结果是( )
A.abc
B.789
C.7890
D.979899
12.有以下程序
int fun (int x,int y){ return x != y ? (x + y) / 3 : x; }
main ()
{
int a = 4, b = 8, c = 6;
printf(“%dn”, fun(3 * a, fun(b, c)));
}
程序运行后的输出结果是( )。
A.3
B.6
C.8
D.5
13.有以下程序
#include
void fun(char *c)
{
while(*c)
{
if (*c>=’a’&&*c<=’z’)*c=*c-(‘a’-‘A’);
c++;
}
}
main()
{
char s[81];
gets(s);
fun(s);
puts(s);
}
当执行程序时从键盘上输入 Hello Beijing
A.hello Beijing
B.Hello Beijing
C.HELLO BELJING
D.hELLO Beijing
14. 设有定义:char s[81];int i=10;以下不能将一行(不超过 80 字符)带有空格的字符串正确读入的语句或语句组是( )。
A. gets(s);
B.while((s[i++]=getchar())!=’n’);s=’