欢迎您访问江苏自考网!  今天是
当前位置: 网站首页 > 历年真题 >

全国2013年1月00342高级语言程序设计(一)自考试题

2017-10-23 13:53来源:江苏自考网
全国2013年1月高等教育自学考试
高级语言程序设计(一)试题
课程代码:00342

一、单项选择题(本大题共15小题,每小题2,30)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。
1.正确的自定义标识符是
A.2c                                                              B.x#y
C.case                                                            D.Word_2
2.设int a=2,b=3,c;,正确的赋值语句是
A.(a+b)++;                                                    B.b=a%2.5;
C.a+=b+=5;                                                   D.c=a+b=5;
3.设int a=l,b=3,c;,执行语句c=(a!=b)?++a:b++;后,c的值是
A.1                                                               B.2
C.3                                                                D.4
4.表达式3.6-1/2+5%2的值是
A.2.6                                                             B.3.6
C.4.1                                                             D.4.6
5.设int a=-1,b=3;,执行表达式++a&&(b=5)后,a和b的值分别是
A.-1,3                                                           B.0,3
C.0,5                                                             D.-1,5
6.正确的实型常数是
A.0                                                               B.e2
C.0.871                                                         D.3e-1.5
7.设int x=10,*p;,指针p指向x的正确语句是
A.p=x;                                                           B.*p=*x;
C.*p=&x;                                                      D.p=&x;
8.设float a,b,c;,函数调用语句f(((a,b),a+c),5);中参数的个数是
A.1                                                               B.2
C.3                                                                D.4
9.设int m[]={5,4,3,2,l},i=2;,其值为l的数组元素是
A.m[i+2]                                                       B.m[i+3]
C.m[i-l]                                                         D.m[m[i]]
10.下列叙述正确的是
A.while语句中的循环体至少被执行一次
B.do-while语句中的循环体至少被执行一次
C.switch语句中每个case后必须有break语句
D.continue和break在循环语句中的作用是相同的
11.设char s[2*5]="1234567";,数组s的长度是
A.10                                                              B.9
C.8                                                                D.7
12.下列二维数组定义并初始化正确的是
A.int a[3][3]=[0,3];
B.int a[2][]={{3,4},{5,6}};
C.int a[2,3]={2,3,4,5,6,7,8,9};
D.int a[][4]={{l,2,4,5},{2,3},{3,4,9}};
13.设char s1[20]="China",s2[10]="Beijing";,执行下列语句后的输出结果是
strcat(sl,s2); print f("%s, %d\n",s1,strlen(s1));
A.China,5                                                      B.Beijing,7
C.ChinaBeijing,12                                          D.BeijingChina,12
 
14.设typedef int ARRAY[10];,与语句ARRAY a,b;等价的是
A.int a,b;                                                       B.int a,b[10];
C.int a[10],b;                                                 D.int a[10],b[10];
15.表示“回车”的转义字符是
A.'\r'                                                              B.'\t'
C.'\o'                                                              D.'\n'
 

二、填空题(本大题共10小题,每小题2,20)
16.执行语句printf ("%d",3^5);后的输出结果是__________。
17.在C语言的文件使用中,EOF的值是__________。
18.设float x,y,z;,的C语言算术表达式是__________。
19.运算符+=,!和&&中优先级最高的是__________。
20.设int a,b;,与a*=5-b;等价的赋值语句是__________。
21.系统函数sqrt()应使用的文件包含命令是__________。
22.在C语言中,表示逻辑“假”的值是__________。
23.设char ch='A';,执行语句printf("%c,%d",ch+32,ch);后的输出结果是__________。
24.设int n=123;,执行语句printf("%d",n/10%10);后的输出结果是__________。
25.在C语言中,将圆周率(PI=3.1415926)定义为常量的宏定义命令是__________。
三、程序分析题(本大题共4小题,每小题4,16)
阅读下列程序,将输出结果写到答题纸上。
26.#includc<stdio.h>
void main()
{  char op;
int a=10,b=20;
for(op='a';op<='d';op+=2)
switch(op)
{
case 'a':printf("a+b=%d\n",a+b);break;
case 'b':printf("a-b=%d\n",a-b);break;
case 'c':printf("a*b=%d\n",a*b);break;
case 'd':printf("a/b=%d\n",a/b);break;
}
}
27.#include<stdio.h>
void sub (int x, int y, int *z)
{   *z=x+y;  }
void main( )
{   int a=2,b=5,c;
sub(a,b,&c);
printf("%d, %d, %d\n", a, b, c);
}
28.#include<stdio.h>
int x=l;   /* 全局变量 */
void fx(int p)
{   x=p+x; p++;   }
void main( )
{
inta=3;
fx(a);x++;
printf("%d, %d\n", a, x);
}
29.#include<stdio.h>
int power(int n)   /* 递归函数 */
{
if(n==0)return 1;
else return 2*power(n-1);
}
void main( )
{   printf("%d\n", power(5));   }
四、程序填充题(本大题共3小题,每小题6,18)
请将下列程序横线处缺少的部分补上,使其能正确运行。
30.计算1!+2!+3!+4!+5!的值并输出。
#include<stdio.h>
int f(int a)
{
static int c=1;
c=c*a;
return(   ①   );   /*  第一空  */
}
void main()
{
int i, k;
k=-l;
for(i=2;i<=5;i++)k+=    ②   ;  /*  第二空  */
printf("   ③   \n",k);  /*  第三空  */
}
31.设有30名学生,由键盘分别输入每个学生的姓名和两门课成绩,计算每个学生的总分,并输出总分最高者的姓名和总分。
#include<stdio.h>
#define N 30
struct st
{
char name[20];
float s1,s2,total;
};
void main()
{
struct st s[N];
int i,k;
float max;
for(i=0;i<N;i++)
{
scanf(%s%f%f", s[i].name, &s[i].s1,&s[i].s2);
s[i].total=   ①   ;  /*  第一空  */
}
max=   ②   ;  /*  第二空  */
for(i=1,k=-0;i<N;i++)
if(s[i].total>max)
{  max=s[i].total;   ③   ;}  /*  第三空  */
pfintf("%s,%f\n", s[k].name, max);
}
32.从键盘输入5个字符串,将其写到文本文件fs.txt中。
#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE*fp;
char str[5][10];
int i;
for(i=0;i<5;i++)gets(str[i]);   /*  输入字符串  */
if((fp=fopen("fs.txt",    ①   )==NULL)   /*  第一空  */
{   printf("Can’t open file!\n");exit(0);   }
for(i=0;i<5;i++)   /*  写入文件  */
{
fputs(   ②   ,fp);   /*  第二空  */
fputs("\n",fp);
}
fclose(   ③   );   /*  第三空  */
}
五、程序设计题(本大题共2小题,每小题8,16)
33.从键盘输入一个正整数n,若能同时被3、5和7整除,则输出“Yes”,否则输出“No”。
34.利用循环结构输出以下图形。
自学考试真题文档下载:
全国2013年1月00342高级语言程序设计(一)自考试题

上一篇:全国2013年1月00600高级英语自考试题

下一篇:全国2013年1月02387工程测量自考试题