招生咨询08:00-24:00
微信公众号
咨询老师
全国2009年10月高等教育自考高级语言程序设计(一)试题
课程代码:00342
一、单项选择题(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内.错选、多选或未选均无分.
1.主函数头中的"main"是( )
A.保留字
B.函数名
C.变量名
D.类型名
2.下列运算符中优先级最高的是( )
A.?:
B.&&
C.
D.!
3.设static int a;,执行表达式(a= =1)&&(a=-1)&&(a=2)后,a的值是( )
A.-1
B.0
C.1
D.2
4.设int a,b;,与a+=b++;等价的是( )
A.a=b++;
B.a=++b;
C.a=a+b++;
D.a=a+++b;
5.关于宏定义命令,叙述正确的是( )
A.在程序编译前进行宏替换
B.在程序编译时进行宏替换
C.在程序编译后进行宏替换
D.在程序运行时进行宏替换
6.下列表达式值为0的是( )
A.5/2
B.2&&5
C.!25
D.2&5
7.对循环结构正确的叙述是( )
A.do-while循环体可能被执行0次
B.do-while循环体至少被执行1次
C.while循环体不可能被执行0次
D.for循环体不可能被执行无限次
8.下列数组定义并初始化正确的是( )
A.int s[]=(1,2,3,4,5);
B.int s[5]=1,2,3,4,5;
C.int s[2+3]={1,2,3};
D.int s(5)={1,2,3};
9.设char s[10];,能将字符串"+-*/"正确输入的语句是( )
A.scanf("%s",s);
B.scanf("%s",*s);
C.scanf("%s",s[0]);
D.scanf("%s",s[10]);
10.对于C语言中的函数,正确的叙述是( )
A.两个函数可以相互调用,但不能自己调用自己
B.程序执行可以始于任何一个函数,但结束必须在主函数
C.两个函数既可以定义成并列关系又可以定义成嵌套关系
D.一个C程序可以由多个文件组成,一个文件又可以由多个函数组成
11.设int m[5],*p=m;,与元素m[5],*p=m;,与元素m[2]等价的是( )
A.m+2
B.*m+2
C.*(p+2)
D.*p+2
12.设int a[3][3]={{1,2,3},{4,5},{6}};,元素a[1][2]的值是( )
A.0
B.1
C.4
D.6
13.设typedef int ARR[10];,与ARRa,*b;等价的定义是( )
A.int a,b;
B.int a,*b;
C.int a[10],*b;
D.int a[10],*b[10];
14.设int n,p=0;,与语句if(n!=0)p=1;等价的是( )
A.if(n)p=1;
B.if(n=1)p=l;
C.if(n!=1)p=1;
D.if(!n)p=l;
15.文件使用方式"rb+"的含义是( )
A.对文本文件只读
B.对文本文件读和写
C.对二进制文件读和写
D.对二进制文件只写
三、程序分析题(本大题共4小题,每小题4分,共16分)
阅读下列程序,将输出结果写到各题右侧的空白处.
26.
void main( )
{
int i,a[5],*p;
for(i=4;i>=0;i--)*(a+i)=i;
for(p=a;p<a+5;p++)printf("%d\t",*p);
printf("\n");
}
27.
gcd(int p,int q)
{
if(p= =q)return p;
else if(p>q)return gcd(p-q,q);
else return gcd(p,q-p);
}
void main( )
{
int m=24,n=36,min,max;
max=gcd(m,n);
min=m*n/max;
printf("max=%d,min=%d\n",max,min);
}
28.
s(int a)
{
static int b=l0;
if(a%2= =1)return(++b);
else return(++a);
}
void main( )
{ int i;
for(i=0;i<3;i++)printf("%d\t",s(i));
printf("\n");
}
29.
struct people
{
char name[10];
float score;
}per[ ]=={{"Tom",95.5},{"Mary",88.0}};
void main( )
{
struct people*p=per+1;
printf("%s,%.1f\n",per[0].name,pscore);
}
四、程序填充题(本大题共3小题,每小题6分,共18分)
请将下列程序横线处缺少的部分补上,使其能正确运行.
30.对两个整型变量先进行输入和输出,将它们的值交换后再输出.
#define PR printf("a=%d,b=%d\n",a,b)
void main( )
{
int a,b,______;/* 第一空 */
scanf("%d%d",_________);/* 第二空 */
PR;
temp=a,_______,b=temp;/* 第三空 */
PR;
}
31.为二维数组各元素输入数据,计算并输出全部元素之和.
#define N 5
void main( )
{
int i,j,a[N][N],sum=_______;/* 第一空 */
for(i=0;i<N;i++)
for(j=0;j<N;j++)
{
scanf("%d",&a[i][j]);
sum+=______________;/* 第二空 */
}
printf("sum=%d\n",___________);/* 第三空 */
}
32.为n输入一个正整数值后,计算并输出sum=1-
[1]
本文标签:山东自考 历年真题 全国2009年10月高等教育自考高级语言程序设
转载请注明:文章转载自(http://www.zk.sd.cn)
⊙小编提示:添加【山东自考网】招生老师微信,即可了解2023年山东自考政策资讯、自考报名流程、准考证打印方法、成绩查询时间以及领取历年真题资料、个人专属备考方案等相关信息!
(添加“山东自考网”招生老师微信,在线咨询报名报考等相关问题)
《山东自考网》免责声明:
(一)由于考试政策等各方面情况的不断调整与变化,本网站所提供的考试信息仅供参考,请以省考试院及院校官方发布公布的正式信息为准。
(二)本站文章内容信息来源出处标注为其他平台的稿件均为转载稿,免费转载出于非商业性学习目的,版权归原作者所有。如您对内容、版权等问题存在异议请与本站联系,我们会及时进行处理解决,联系邮箱:812379481@qq.com。