C语言07年份及78年答案Word文档下载推荐.docx
《C语言07年份及78年答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言07年份及78年答案Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。
![C语言07年份及78年答案Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2023-1/30/6496f1ec-9e49-4e92-bafb-4256f779ab1e/6496f1ec-9e49-4e92-bafb-4256f779ab1e1.gif)
7.在说明语句:
int(*mt)[10];
中,标识符mt代表的是:
A.一个用于指向函数的指针变量B.一个返回值为指针型的函数名
C.一个用于指向整型数据的指针变量D.一个用于指向一维数组的指针变量
8.以下程序:
main()
{
intx=2,y=4,z=7,m;
m=x&
&
y+z);
printf(“%d”,m);
}
输出结果是
A.8B.1
C.0D.12
9.在C语言的函数中:
A.必须有形参B.可以有也可以没有形参
C.形参必须是变量名D.数组名不能作形参
10.以下程序的输出结果是:
main(0
intx=3,y=9;
x*=y;
y+=x;
printf(“%d%d\n”,x,y);
A.2736B.39
C.2727D.3636
11.对于C语言程序中的函数,下列叙述中正确的是:
A.函数的定义可嵌套,但函数的调用不能嵌套.B.函数的定义和调用均不可嵌套.
C.函数的定义和调用均可嵌套.D.函数的定义不能嵌套,但函数的调用可嵌套..
12以下正确的实型常量:
A.e3B.E10
C.1.23e5D.12e1.23
13.以下说法不正确的是:
A.主函数main中定义的变量在整个文件或程序中有效
B.不同函数中,可以使用相同名字的变量
C.形式参数是局部变量
D.在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效
14.下列关于C语言数据文件的叙述中正确的是:
A.C语言只能读写文本文件
B.C语言只能读写二进制文件
C.文件由字符序列组成,可按数据的存放形式分为二进制文件和文本文件
D.文件由二进制数据序列组成.
15.在C语言中,变量的默认存储类型是:
A.extern1B.auto
C.staticD.register
16.以下程序:
intx=5,y=4,z=3;
if(x<
y+z)printf(“****”);
elseprintf(“####”);
执行后输出的结果是:
A.****B.无输出结果
C.####D.存在语法错误
17.设x为int型变量,y为float型变量,则下面语句中错误的是:
A.x++B.x=y=0
C.y=(float)xD.x=y%3
18.以下程序:
charst[30]=”Iamastudent”;
printf(“%d\n”,strlen(st));
A.14B.30
C.11D.16
19.设x,y,z和k都是int型变量,则执行下列语句后,变量x的值为:
x=(y=5,z=20,k=50);
供选择的答案是:
A.5B.50
C.20D.75
20.变量的指针,其含义是指该变量的
A.值B.名
C.地址D.一个标志
第二部分:
简单程序
21.下列程序:
intx[5]={1,3,5,7,9};
intk,sum=0;
for(k=0;
k<
5;
k++)
if(k%2==0)
sum+=x[k];
printf(“%d\n”,sum);
A.26B.15
C.1D.10
22.在执行下列程序时:
#include“stdio.h”
charch,i=0;
while((ch=getchar())!
=’\n’)
{if(ch>
=’A’&
ch<
=’Z’)
ch=ch+32;
i++;
printf(“%c”,ch)
printf(“%d\n”,i)
如果从键盘上输入:
ABCDefgh,则输出结果是:
A.ABCDefgh8B.ABCDefgh4
C.abcdEFGH8D.abcdefgh4
23.下列程序:
{itnx,y,z;
x=10,y=-15,z=3;
if(x+y>
z)
x=x*2;
else
x=x*5
printf(“%d\n”,x)
则执行后输出结果是:
A.20B.50
C.10D.15
24.下列程序:
staticinta[]={5,10,7,2,8,6,4};
intsum=0;
int*p;
for(p=a;
p<
a+7;
p=p+2)
sum+=*p;
printf(“%d\n”,sum)
A.18B.42
C.35D.24
25.下列程序:
Voidfun(intb[],intn)
{inti,temp;
for(i=0;
i<
n/2;
i++)
{temp=b[i];
b[i]=b[n-1-i]
b[n-1-i]=temp;
}}
itni,a[5]={1,3,5,7,9};
fun(a,5);
for(i=0;
printf(“%d“,a[i]);
A.13579B.97531
C.57931D.13975
26.以下程序:
staticcharm[]=”Cprogram”;
char*ptr;
ptr=m;
for(ptr=ptr+2;
*ptr!
=’\0’;
prt++)
printf(“%c”,*ptr);
执行后输出的结果是:
A.CprogramB.“Cprogram”
C.“program”D.program
27.以下程序:
intx=4,y=5,z,m;
z=x&
y;
m=x|y;
printf(“%d%d\n”,z,m);
A.01B.99
C.45D.54
28.以下程序:
intn;
charch;
};
func(structtemat)
{at.n=at.n+10;
at.ch=at.ch+2;
printf(“%d,%c\n”,at.ch,at.n);
structtemat=(15,’A’);
func(at);
A.25,CB.15,C
C.25,AD.15,A
29.以下程序:
charstr1[30]=”Hello”,*str2=”howareyou!
”;
intx;
strcat(str1,str2);
x=strlen(str1);
printf(“%d\n”,x);
A.30B.5
C.17D.15
30.以下程序:
int*f(int*x,int*y)
if(*x>
=*y);
returnx;
returny;
inta=5,b=10,*p,*q,*r
p=&
a;
q=%b;
r=f(p,q);
printf(“%d,%d,%d\n”,*p,*q,*r);
A.5,10,20B.10,10,5
C.5,5,10D.5,10,10
31.从键盘输入B,以下程序的运行结果是:
{chargrade;
scanf(“%c”,&
grade);
switch(grade)
{case‘A’;
printf(“>
=90”);
case‘B’;
case‘C’;
printf(“>
=60”);
break;
case‘D’;
printf(“<
60”);
default:
printf(“error”);
A.>
=60<
60errorB.>
=60
C.<
60D.error
32.以下程序运行后,变量C的值是:
Intfun(intx)
{intz;
z=x*2;
returnz;
inti,c=0;
for(i=1;
i<
4;
i++)
c=fun(i);
printf(“%d”,c);
A.12B.8
C.6D.246
第二卷
说明:
(1)第二卷均为填空题,在阅读和原题程序的基础上,在第二卷答题卡上编号对应的栏目中填入适当的字符,语句,以构成一个正确的C语言程序。
(2)每空栏3分,10个空栏共30分。
以下程序用两种方法输出字符串:
#include<
stdio.h>
inti;
charstring[]=”IloveChina!
printf(“1”,string);
printf(“---------------------------\n”);
2;
while(string[i])
printf(“%c”,string[i];
3;
printf(“\n”);
2.
下列程序逻辑统计一行语句中的单词数
{inti,c,num=0,word=0;
charstring[81];
gets(string);
for(i=0;
(c=string[i]!
if(c==32)word=0;
elseif(word==0)
word=1;
num++;
printf(“thereare%dwordsintheline\n”,num);
3.
以下程序用于求给定数据序列的最小值:
intminfun(intn,intarray[])
inti,min;
min=7;
n;
if(min8array[i])9;
trturn10;
intm[8]={4,-5,16,90,-51,21,8,10};
intmin;
min=minfun(8,m);
printf(“min=%d\n”,min
2007.1试题:
选择题:
1
2
3
4
5
6
7
8
9
10
B
C
A
D
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
填空题:
1%s。
2i=0。
3i++。
7array[0]或填其它任意数字。
8>
。
9min=array[i]。
10min
2008.1试题:
1s=0
2a或填 &
a[0]
3s+=a[i]或填s+=p[i]或填s+=*(a+i)或填s+=*(p+i)
4j
5str[j]
6j
7sum=0
8p[i]或填*(p+i)或填*p++
9sum/n
10aver(m,5)