机密★启用前
2024年10月高等教育自学考试全国统一考试
高级语言程序设计(一)
(课程代码 00342)
注意事项:
1.本试卷分为两部分,第一部分为选择题,第二部分为非选择题。
2.应考者必须按试题顺序在答题卡(纸)指定位置上作答,答在试卷上无效。
3.涂写部分、画图部分必须使用 2B铅笔,书写部分必须使用黑色字迹签字笔。
第一部分 选择题
一、单项选择题:本大题共15 小题,每小题2分,共30分。在每小题列出的备选项中只有一项是最符合题目要求的,请将其选出。
1.下列不属于冯·诺依曼体系特点的是
A.指令和数据采用二进制表示
B.指令和数据采用十进制表示
C.指令和数据存储在存储器中
D.计算机由输入设备、输出设备、存储器、运算部件和控制部件五大部分组成
2.下列属于C语言关键字的是
A.Char
B.CASE
C.FOR
D. if
3.转义字符w 的含义是
A.回车
B.换页
C.回车换行
D.左退一格
4.设 int a[3][3]={{1,2,3},(4,5,6},{7,8,9}},则 a[1][1]的值是
A.1
B.3
C.5
D.7
5.下列哪项不是C语言中变量的类型
A.内部型
B.外部型
C.寄存器型
D.静态型
6.设 int x,*p=&x;下列用法错误的是
A.*&x
B.&*x
C.*&p
D.&*p
7.在宏定义 #denePI 3.14159中,用宏名PI代替的是
A.单精度数
B.双精度数
C.常量
D.字符串
8.C语言的编译系统对宏命令的处理是
A.和C程序中的其它语句同时进行编译
B.在对源程序中其它部分正式编译之前进行
C.在程序运行时进行
D.在程序链接时进行
9.在C语言中,关于文件的组成,下列描述正确的是
A.文件由数据行组成
B.文件由记录组成
C.文件由字符(字节)序列组成
D.文件由数据块组成
10.设 int a;则表达式 0&& (++a) 的结果是
A.0
B.1
C.a
D.a+1
11.设int a=12,b=10;float c=2.0,d=0.5;则a%b/c*d运算后的值是
A.0
B.1
C.0.5
D.2
12.C语言中,continue 语句不能用于
A. for
B. while
C. do…while
D. switch
13.设int a[10];则对数组元素引用正确的是
A.a[10]
B. a[5]
C.a[5*3
]D.a[-1]
14.C语言中,被调用函数中无return 语句,则下列说法正确的是
A.不返回值
B.返回0
C.返回一个不确定的值
D.返回1
15.设int a=1,b,*p=&a; b=*p+1;则b等于
A.2
B.1
C.0
D.a
第二部分 非选择题
二、填空题:本大题共 10 小题,每小题2分,共20分。
16.每个C程序函数由一个或多个函数组成。每个程序有且仅有一个______函数。
17.在C语言中,整型常量 0X123 的十进制表示为______。
18.结构化程序的三种基本结构为顺序结构、选择结构和______。
19.函数的返回值是通过被调函数中的______获得的。
20.指针变量是专门用于存储其他变量______的变量。
21.结构体类型变量的使用是通过访问结构体类型变量的______实现的。
22.C语言的文件包含是指一个源文件可以将另一个源文件的______包含进来。
23.C语言文件的存取方式包括顺序存取和______两种。
24.设int a[3];则一维数组a所占用的内存字节数为______字节。
25.C语言规定,用户标识符仅由大小写英文字母、数字和下画线组成,且第一个字符不能是______。
三、程序分析题:本大题共4小题,每小题4分,共16分。阅读下列程序,写出输出结果。
26.#include<stdio.h>
int main(void)
{
int n=1,sum=0;
while(n<100)
{
sum=sum+n;
n++;
}
printf(“sum=%d\n”,sum);
return 0;
}
27.#include<stdio.h>
int main(void)
{
int i,a[10];
for(i=0;i<=9;i++) a[i]=i;
for(i=9;i>=0;i–) printf(“%d”,a[i]);
return 0;
}
28. #include<stdio.h>
#define K 4
#define N 5
long f1 (int n,int k)
{
long power=n;
int i;
for(i=1;i<k;i++) power*=n;
return power;
}
long f2(int n,int k)
{
long sum=0;
int i;
for(i=1;i<=n;i++)sum+=f1(i,k);
return sum;
}
int main(void)
{
printf(“Sum of%d powers of integers from 1 to%d=” ,K,N);
printf(“%d\n”,f2(N,K));
return 0;
}
29. #include<stdio.h>
int main(void)
{
char *string =”I Love China.”;
for(;*string!=”\0′,string++) printf(“%c”,*string);
printf(“\n”);
return 0;
}
四、程序填充题:本大题共3小题,每小题6分,共18分。请将下列程序画线处缺少的部分补上,使其能完成题目的功能并正确运行。
30.从键盘输入一个正整数,按二进制位输出该函数(假设该机器上正整数为16 位)。
#include<stdio.h>
int main(void)
{
int num,mask,i;
printf(“Input a integer number:”);
scanf(“%d”,&num);
mask=1<<①; /*第一空#/
printf(“%d=”,num);
for(i=1;i<=16;i++)
{
putchar(num&mask?’1′:’0′);
num=num<<②); /第二空*/
if(③)putchar(‘,’); /第三空*/
}
printf(“\bB\n”);
return 0;
}
31.从键盘输入一个3行4列的矩阵,将其转置后形成4行3列的矩阵输出。
#include <stdio.h>
int main(void)
{
int i,j,x[3][4],y[4][3];
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf(“%d”,①); /第一空*/
for(i=0;i<3;i++)
for(i=0;j<k;j++)
② /*第二空*/
for(i=0;i<4;i++)
{
for(j=0 j<3;j++)
printf(“%d”③/第三空*/
printf(“\n”);
}
return 0;
}
32.输入三个国家的名称,按字母排序后输出。
#include <stdio .h>
#include <string h>
int main(void)
{
char *s[ ]-{“China”,”America”,”Russia”},*p;
int ij,k=3;
for(i-0;i<k-1;i++)
for(=0;j<k-1-ij++)
if(①>0) /*第一空#/
p=s[j];
② /第二空*/
s[j+1]=p;
for(i=0;i<k;i++)
printf(“%s\n”,③); /*第三空*/
return 0;
}
五、程序设计题:本大题共2小题,每小题8分,共16分。
33.输入整数 n,计算 1!+2!+3!+….+(n-1)!并输出结果。
34.利用“冒泡排序法”对元素个数为 99个整数的一维数组从小到大进行排序。
(2)本站自学考试信息供自考生参考,权威信息以各省(市)考试院官方为准。
暂无评论内容