韩山专插本C语言真题卷Word文件下载.docx
《韩山专插本C语言真题卷Word文件下载.docx》由会员分享,可在线阅读,更多相关《韩山专插本C语言真题卷Word文件下载.docx(51页珍藏版)》请在冰豆网上搜索。
二、单项选择题〔每题1.5分,共30分〕
1
2
3
4
5
6
7
8
9
10
答案
11
12
13
14
15
16
17
18
19
20
1.算法是指为解决*个特定问题而采取的正确且有限的步骤,下面不属于算法的5个特性的是()。
A.高效性B.有穷性C.有零个输入或多个输入D.确定性
2.C语言程序的三种根本构造是〔〕。
A.顺序构造、选择构造、循环构造
B.递归构造、循环构造、转移构造
C.嵌套构造、递归构造、顺序构造
D.循环构造、转移构造、顺序构造
3.有下面的程序段
chara[3],b[]="
China〞;
a=b;
printf("
%s〞,a);
A.运行后将输出ChinaB.运行后将输出Ch
C.运行后将输出ChiD.编译出错
4.假设变量均已正确定义并赋值,以下合法的C语言赋值语句是〔〕。
A.*=n%2.5B.*=y==5C.*+n=iD.*=5=4+1
5.假设执行以下程序时从键盘上输入9,则输出结果是〔〕。
A.11B.10C.9D.8
main()
{intn;
scanf("
%d"
&
n);
if(n++<
10)printf("
%d\n"
n);
elseprintf("
n--);
}
6.设*、y、t均为int型变量,则执行语句:
*=y=3;
t=++*||++y;
后,y的值为〔〕。
A.不定值B.4C.3D.1
7.有以下程序段
intk=0;
while(k=1)k++;
while循环执行的次数是〔〕。
A.无限次B.有语法错,不能执行
C.一次也不执行D.执行1次
8.假设变量c为char类型,能正确判断出c为小写字母的表达式是〔〕。
A.‘a'
=c<
=‘z'
B.(c>
=‘a'
)||(c<
)
C.(‘a'
=c)and(‘z'
>
=c)D.(c>
)&
&
(c<
9.以下所列的各函数首部中,正确的选项是〔〕。
A.voidplay(var:
Integer,varb:
Integer)
B.voidplay(a,b)
C.voidplay(inta,intb)
D.Subplay(aasinteger,basinteger)
10.以下程序的输出结果是〔〕。
A.0B.29C.31D.无定值
fun(int*,inty,intz)
{z=***+y*y;
}
{inta=31;
fun(5,2,a);
a);
11.以下程序的输出结果是〔〕。
A.非法B.a[4]的地址C.5D.3
main()
{chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;
*--p);
12.当调用函数时,实参是一个数组名,则向函数传送的是〔〕。
A.数组的长度
B.数组的首地址
C.数组每一个元素的地址
D.数组每个元素中的值
13.假设fp是指向*文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是〔〕。
A.EOFB.0C.非零值D.NULL
14.以下程序的输出结果是〔〕。
A.1,5,9,B.1,4,7,C.3,5,7,D.3,6,9,
{inti,*[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;
i<
3;
i++)printf("
%d,"
*[i][2-i]);
15.以下表达正确的选项是()。
A.在进展宏定义时,可以引用已定义过的宏
B.编译预处理命令必须位于程序的开头
C.宏展开将占用程序运行时间
D.从宏被定义的位置起,所有与宏名一样的字符串都将被替换
16.在说明一个共用体变量时,系统分配给它的存储空间是()。
A.该共用体中第一个成员所需存储空间
B.该共用体中最后一个成员所需存储空间
C.该共用体中占用最大存储空间的成员所需存储空间
D.该共用体中所有成员所需存储空间的总和
17.以下程序段的输出结果()。
intb=10;
%d"
~b);
A.02B.-20C.-21D.-11
18.在C语言中,对文件进展操作的一般步骤是〔〕。
A.翻开文件——操作文件——关闭文件
B.操作文件——修改文件——关闭文件
C.读写文件——翻开文件——关闭文件
D.读文件——写文件——关闭文件
19.假设执行fopen()函数发生错误,则函数的返回值是〔〕。
A.地址值B.NULLC.1D.EOF
20.以下程序运行后结果是〔〕。
#defineA3
#defineB(a)((A+1)*a)
{int*;
*=3*(A+B(7));
printf("
*);
A.93B.31C.12D.不确定
三、阅读程序,将运行结果写到各题右侧的空白处〔每题4分,共20分〕
1.main()
{inta=0;
a+=(a=8);
2.main()
{inta[3][3]={{1,2},{3,4},{5,6}};
inti,j,s=0;
for(i=1;
i++)
for(j=0;
j<
=1;
j++)
s+=a[i][j];
s);
3.main()
{charstring1[64]="
abc\t"
;
char*string2="
def\t"
charstring3[]="
123\n"
strcat(string1,string2);
strcat(string1,string3);
strlen(string1));
4.structdate
{inta;
chars[5];
}arg={27,"
abcd"
};
{
arg.a-=5;
strcpy(arg.s,"
ABCD"
);
%d,%s"
arg.a,arg.s);
5.main()
{charfood[]="
Bread"
char*p;
p=food+strlen(food);
while(--p>
=food)
puts(p);
四、阅读程序或程序段,填空〔每题4分,共20分〕
1.以下程序中,select函数的功能是:
在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标,请填空。
#defineN3
#defineM3
select(inta[N][M],int*n)
{inti,j,row=1,colum=1;
for(i=0;
N;
M;
if(a[i][j]>
a[row][colum]){row=i;
colum=j;
*n=;
return;
{inta[N][M]={9,11,23,6,1,15,9,17,20},ma*,n;
ma*=select(a,&
ma*=%d,line=%d\n"
ma*,n);
2.以下程序的功能是:
输出a,b,c三个变量中的最小值,请填空。
#include<
stdio.h>
voidmain()
{inta,b,c,t1,t2;
scanf("
%d%d%d"
a,&
b,&
c);
t1=a<
b"
;
t2=c<
t1"
t2);
3.下面程序采用函数递归调用的方法计算sum=1+2+3+4+...+n,请填空。
#include"
stdio.h"
{intsum(int);
inti;
i);
if(i<
=0)printf("
Inputerror!
"
elseprintf("
sum=%d"
sum(i));
intsum(intn)
if(n==1)return;
elsereturn;
4.编写一个程序判定一个字符在一个字符串中出现的次数,如果字符不出现,则返回0,请填空。
#include<
intchar_count(char*s,charletter)
{intcount=0;
while(*s)
{if()
count++;
{charc,string[50],*str=string;
Inputstring:
gets(str);
Inputachar:
%c"
Thenumberis:
char_count(str,c));
5.编写一个程序将用户输入的由数字字符和非数字字符组成的字符串中的数字提取出来,请填空。
charstr[20],*p;
p=str;
for(;
p++)
*p);
五、编程题〔每题10分,共20分〕
1.编一程序,输入一个百分制成绩,输出用‘A’,‘B’,‘C’,‘D’,‘E’表示的等级。
设:
90分以上的为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。
假设输入的成绩大于100分或小于0分,输出"
输入错误!
〞的提示信息。
〔要求用switch语句编程〕。
2.在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1到100分,选手最后得分为去掉一个最高分和一个最低分后其余8个分数的平均值,请编写程序实现。
韩山师范学院2011年本科插班生考试样卷
教育技术学专业C语言程序设计
评