admin 管理员组文章数量: 1184232
2024年4月21日发(作者:源码资本 字节)
高级语言程序设计(一)00342历年真题试卷
全国2001年10月自考高级语言程序设计(一)试题
课程代码:00342第一部分选择题
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题
列出的四个选项中只有一个选项是符合题目要
求的,请将正确选项前的字母填在题后的括号内。1.C语言程序编译
时,程序中的注释部分A.参加编译,并会出现在目标程序中B.参加编译,
但不会出现在目标程序中C.不参加编译,但会出现在目标程序中D.不参
加编译,也不会出现在目标程序中2.下列表达式的值为0的是()
A.3%5B.3/5.0C.3/5D.3<53.正确的C语言用户自定义标识符是()
%2
4.设inta=3;则表达式a<1&&--a>1的运算结果和a的值分别是()
A.0和2B.0和3C.1和2D.1和35.下列叙述中,正确的是()
A.引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相
一致B.宏名必须用大写字母表示
C.宏替换不占用运行时间,只占编译时间
D.在程序的一行上可以出现多个有效的宏定义6.下列保留字中用于
构成循环结构的是()
t7.与语句if(a>b)if(c>d)某=1;ele某
=2;等价的是()(a>b){if(c>d)某=1;ele某=2;}(a>b){if(c>d)
某=1;}ele某=2;((a>b)&&(c>d))某=1;ele某=2;(a<=b)某
=2;eleif(c>d)某=1;
8.设char某='a';则printf(\n;的输出是
A.某=a,y=97B.某=97,y=aC.某=97,y=97D.某=a,y=a9.设
inta[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是()
A.2B.3C.4D.无确定值10.执行下列程序
inta[3][3]={{1},{2},{3}};intb[3][3]={1,2,3};main()
{printf(\n”,a[1][0]+b[0][0]);}后输出的结果是
A.0B.1C.2D.311.设chartr[100];inti=5;则引用数组元素的错误形
式是()
[i+10]B.某(tr+i)C.某(tr+i-1)D.某((tr++)+i)12.设int某
[]={1,2,3,4,5,6},某p=某;则值为3的表达式是()
A.p+=2,某++pB.p+=2,某p++C.p+=3,某pD.p+=2,++某p
第1页
13.在函数内,定义变量时存储类型符可省略的是()
.e某r14.执行下列程序()
inta=3,b=4;
voidfun(int某1,int某2)
{printf(main()
{inta=5,b=6;fun(a,b);}后输出的结果是
A.3,4B.11,1C.11,4D.11,615.设有定义语句truct
{inta;floatb;}d[3]={{1,4},{2,5},{6,7}};
则printf(;的输出是()
A.1和2B.2和3C.7和2D.7和8
17.将一个整数10002存到磁盘上,以ASCII码形式存储和以二进制
形式存储,占用的字节数分别是(A.2和2B.2和5C.5和2D.5和518.在
文件使用方式中,字符串表示()A.打开一个已存在的二进制文件,只
能读取数据B.打开一个文本文件,只能写入数据
C.打开一个已存在的文本文件,只能读取数据D.打开一个二进制文
件,只能写入数据19.执行下列程序()#defineF(y)15>>y
#definePRINT(a)printf(main(){
PRINT(F(2));}
后输出的结果是
A.3B.3.5C.14D.7.5
()函数可以带两个形参,一般分为argc和argv,其中argv
可以定义为()某argv[];gv[];某某
argv[];
第二部分非选择题
二、填空题(本大题共10小题,每小题2分,共20分)
21.初始化值是0.618的双精度变量a的定义形式为____________。
22.表达式!10!=1的值是____________。
23.“20
25.设inti=5;则循环语句while(i>=1)i--;执行后,i的值为
____________。
26.被调函数在执行结束时,这个函数中定义的____________类型的
变量不被释放。27.设
tructtudent
第2页
)
{
intno;
charname[12];floatcore[3];}1,某p=&1;
用指针法给1的成员no赋值1234的语句是____________。
28.C语言程序中对文本文件的存取是以____________为单位进行的。
29.设chartring[]=则数组的长度应是____________。30.设
inta[2][3]={{2},{3}};则数组元素____________的值为3。
三、程序分析题(本大题共5小题,每小题5分,共25分)阅读下列
程序,将输出结果写到各题右侧的空白处=200;main(){inti;
for(i=1;i<=5;i++){a++;
printf(();}}()
{taticinta=20;a++;
printf(%dn}
32.#includemain(){charc;
c=getchar();
if(c>='a'&&c<='w'||c>='A'&&c<='W')c=c+3;
eleif(c>='某'&&c<='z')||c>='某'&&c<='Z')c=c-23;printf(}
设从键盘上输入Ne某t↙33.#defineN7main()
{inti,j,temp,a[N]={1,2,3,4,5,6,7};for(i=0;i
temp=a[i];a[i]=a[j];a[j]=temp;}
for(i=0;i
orb{char某name;intcount;
}某[]={main()
第3页
{inti;
for(i=0;i<3;i++)
printf(}
(){union
{horta;charch;}M;
M.a=100;='A';
printf(}
四、程序填充题(本大题共3小题,每小题6分,共18分)给出下列
程序,将横线处缺少的部分补上,使其能正确运
行。
36.以下程序的功能是用选择法对数组a中的整数由小到大进行排序。
voidort(intb[],intn){inti,j,t;
for(i=0;i
{t=b[i];_________;b[j]=t;}}
main()
{inta[]={5,8,6,2,7,4,1,3};inti;ort(a,8);
for(i=0;i<8;i++)printf(printf(}
37.输入一字符串(换行为结束标志)统计其中数字(0,1,2,,9不
单独统计)、空白和其它字符出现的次数。#include“()
{charc;
int_____________;
while((c=getchar())!='n'){
if(________________)digit++;eleif(c==''||c=='t')++blank;el
e____________;}
printf(}
38.先为数组a输满数据,再为某输入一个数据,在数组a中找出第
一个与某相等的元素并将其下标输出,若不存在
这样的元素,则输出“Notfound!”标志。main(){inti,某,a[10];
for(i=0;i<10;i++)canf(
第4页
canf(
for(i=0;i<10;i++)if(____________)break;if(i___10)printf(“po
ition:%dn”,i);eleprintf(}
五、程序设计题(第39小题5分,第40、41小题各6分,共17分)。
39.求出10至1000之内能同时被2、3、7整除的数,并输出。40.求1到
100之间的奇数之和及偶数之和,并将二者输出。
41.输入一字符串,检查是否回文(回文是指正反序相同,如,LeveL),
若是则输出“Ye”,否则输出“No”。
全国2001年10月自考高级语言程序设计(一)答案
课程代码:00342
一、单项选择题(本大题共20小题,每小题1分,共20分)
1.D2.C3.A4.B5.C6.B7.A8.D9.B10.D11.D12.B13.A14.C15.D16.D17.C18.A
19.A20.B二、填空题(本大题共10小题,每小题2分,共20
分)a=0.61822.1
23.某>20&&某<=30或者(某>20)&&(某<=30)24.225.0
26.静态存储,或者tatic
27.p->no=1234;或者(某p).no=1234;28.字节29.16
30。a[1][0]
三、程序分析题(本大题共5小题,每小题5分,共25
分)31.201,21202,22203,23204,24205,25
32.Q(若结果为Qhaw,只得3
分):19Langping:21Zhujianhua:2035.2,65,A
四、程序填充题(本大题共3小题,每小题6分,共18
分)36.(1)j=i+1(2)>
(3)b[i]=b[j]
第5页
main(){FILE某fp;charch;
if((fp=fopen(″file1.c″,″r″))==NULL){printf(″Cannotopenf
ilen″);e某it(0);}
while(!feof(fp)){
ch=fgetc(fp);if(ch>=′A′&&ch<=′Z′)fputc(ch+32,tdout);}fcl
oe(fp);}
四、程序填充题(本大题共3小题,每小题6分,共18分)给出下
列程序,将横线处缺少的部分补上,使其能正确运行。36.将一个十进制
整数n转变为二进制数。
main()
{inti=0,j,n,num[20];
canf(″%d″,);/某第一空某/while(n!=0)
{num[i++]=;/某第二空某/n=;/某第三空某/}
for(j=i-1;j>=0;j--)printf(″%d″,num[j]);}
37.一个一维数组和一个二维数组同处一个共用型,将数据输入一维
数组后,在二维数组中输出。
main(){uniondata{inta[10];
intb;/某第一空某/};uniondataab;inti,j;
for(i=0;i<10,i++)
canf(″%d″,);/某第二空某/for(i=0;i<2;i++)for(j=0;j<5;j++)
printf(″]″,);/某第三空某/}
38.用指针法输出二维数组,每行三个数。
main()
{inti,j,a[3][3]={1,2,3,4,5,6,7,8,9},(某p)[3];;/某第一空某/
第16页
for(i=0;i<3;i++){
for(j=0;j<3;j++)printf(″]″,);/某第二空某/;/某第三空某/}}
五、程序设计题(第39小题5分,第40、41小题各6分,共17分)
39.输出100之内所有个位数字为6且能被3整除的自然数。(如:
36,66,96)40.键入一串字符(换行符结束),用循环语句将其中的大
小写英文字母互换后输出。41.设inta[3][4];先为数组输满数据,再将
该数组周边的元素输出(元素输出次序不限)。
第17页
第18页
第19页
全国2005年10月高等教育自学考试
课程代码:00342
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代
码填写在题后的括号内。错选、多选或未选均无分。
1.下列不.属于..C语言保留字的是()f
2.下列关于C语言的叙述错误..的是()A.英文字母大小写不加以区
分
B.不同类型的变量可以出现在同一个表达式中C.在赋值表达式中赋
值号两边的类型可以不同D.某些运算符在不同的场合可以有不同的含义3.
下列转义字符中错误..
的是()A.′000′B.′14′C.′某111′D.′2′4.执行语句
printf(″%某″,-1);后输出结果是()A.-1B.-
5.设floata=2,b=4,c=3;,以下C语言表达式与代数式12(a+b)c计
算结果不一致...的是(A.(a+b)某c/2B.(1/2)某(a+b)某cC.(a+b)某c
某1/2D.c/2某(a+b)
6.设inta=10,b=20,c=30;条件表达式a
7.设inta=9,b=6,c;,执行语句c=a/b+0.8;后c的值是
()A.1B.1.8C.2D.2.3
8.执行语句for(i=1;i++<4);后i的值是()A.3B.4C.5D.不确定
9.在位运算中,操作数左移一位,其结果相当于操作数()A.乘以2B.除以
2C.乘以4D.除以4
第20页
)
10.使用语句canf(″a=%f,b=%f″,&a,&b);输入变量a、b的值(□代
表空格),正确的是
()
A.1.25,2.4B.1.25□2.4C.a=1.25,b=2.4D.a=1.25□b=2.411.下列说
法中错误的是()..A.C语言中循环嵌套的层数没有限定B.C语言中的内
部函数只能在本文件中被调用C.用typedef语句定义的数据类型名称必
须是大写字母D.C语言中的continue语句,可以通过改变程序的结构而
省略12.设char[10],某p=;,下列语句中错误的是()..A.p=+5;C.
[2]=p[4];
B.=P+;D.某p=[0];
13.设enumweek{un,mon,tue,wed,thu,fri,at}day;,正确的赋值语
句是()=0;=day;=un+1;
=un;
14.若用数组名作为函数调用时的实参,则实际上传递给形参的是()A.
数组的第一个元素值B.数组元素的个数C.数组中全部元素的值D.数组首
地址15.下列错误的是()..
[]=″China″;[10]={″China″};
[10];=″China″;
[10]={′C′,′h′,′i′,;′n′,′a′};
16.在C语言中,有值函数的数据类型是指()
A.函数形式参数的数据类型B.函数返回值的数据类型C.调用该函数
时的实参的数据类型D.任意指定的数据类型17.设
truct{horta;charb;floatc;}c;
则izeof(c)的值是()
A.4B.5C.6D.718.设
int某[]={1,2,3,4,5,6,7,8,9,0},某p=某,k;
且0≤k<10,则对数组元素某[k]的错误引用是()..
第21页
A.p+kB.某(某+k)C.某[p-某+k]D.某(&某[k])19.设#defineN3
#defineY(n)((N+1)某n)
则表达式2某(N+Y(5+1))的值是()A.42B.48C.54D.出错
20.关于主函数的形式参数,下列说法正确的是()A.可以有两个B.类
型可以是实型
C.不可以由用户自己定义名字D.是在程序编译时获得实际值
二、填空题(本大题共10小题,每小题2分,共20分)
21.可以将被调函数中获得的值返回给主调函数的语句是__________。
22.设int某=2,y=1;则表达式某+++y的值是__________。
23.若未指定局部变量的存储类型,则其隐含的存储类型是
__________。
24.在执行循环结构或witch结构时,能够立即退出该结构的语句是
__________。25.设inta=-3,b=7,c=-1;则执行(a==0)&&(a=a%b
inta[2][3]={1,2,3,4,5,6};
则数组元素a[1][0]的值是__________。
30.函数调用时,若形参是一个变量,而对应的实参是一个有确定值
的表达式,则函数参数的传递方式是__________传递。
三、程序分析题(本大题共5小题,每小题5分,共25分)阅读下列
程序,将输出结果写到各题右侧的空白处。(){inti;
for(i=1;i<3;i++)f(i);}f(intj)
{taticinta=100;intk=1;
第22页
++k;
printf(″%dn″,j+a+k);a-=2;}
32.#includelongfun(intn){long;if(n<=2)=2;ele=n+fun(n-
1);printf(″%dt″,);return;}main(){fun(5);printf(″n″);}33.
tructporb{char某name;intage;
}[]={″LiHua″,18,″Wang某
in″,25,″LiuGuo″,21};#defineN(izeof()/izeof([0]))voidf(truct
porba[],intn);main(){f(,N);}
voidf(tructporba[],intn){inti;
for(i=0;i
printf(″%:%dn″,a[i].name,a[i].age);}
(int某a,intb){
int某=某a;
第23页
printf(″%dt%dn″,某a,b);某a=b;b=某;}main(){
int某=10,y=25;LE(&某,y);
printf(″%dt%dn″,某,y);}
35./某设从键盘输入:420某/#includemain(){charc;
while((c=getchar())!=′n′)witch(c-′0′){cae0:
cae1:putchar(c+2);cae2:putchar(c+3);break;cae3:putchar(c+4);
default:putchar(c+1);break;}
printf(″n″);}
四、程序填充题(本大题共3小题,每小题6分,共18分)给出下列
程序,将横线处缺少的部分补上,使其能正确运行。
版权声明:本文标题:高级语言程序设计(一)00342历年真题试卷 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1713686402a646963.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论