欢迎您访问上海自考网!  今天是
当前位置: 主页 > 历年真题 >

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

2016-10-09 16:58来源:山东自考网
 全国2012年10月高等教育自学考试
高级语言程序设计(一)试题
课程代码:00342

一、单项选择题(本大题共1 5小题,每小题2分,共30)
 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将答题纸的相应代码涂黑。错涂、多涂或未涂均无分。
1.下列为C语言保留字的是
A.auto                                                      B.Else
C.FILE                                                     D.define
2.正确的C语言常数是
A.e0                                                         B.1e
C.1E0                                                      D.1 E0.0
3.设int n;,执行表达式(n=0)||(n=1)||(n=2)||(n=3)后,n的值是
A.0                                                          B.1
C.2                                                          D.3
4.值为0的表达式是
A.0= =0                                                   B.2&&5
C.!5<2                                                     D.2&5
5.先执行循环体后判断循环条件的语句是
A.for                                                        B.while
C.do-while                                                D.for,while和do-while
6.设char str[20];,从键盘输入中间含有空格的字符串的正确语句是
A.gets(str);                                             B.gets(str[20]);
C.scanf("%s",str);                                 D.scanf("%c",str);
7.定义函数时若函数名前冠有“*” (如float*fun(){……}),则该函数被称为
A.int型函数                                             B.float型函数
C.void型函数                                           D.指针(型)函数
8.设int a[]={1,2,3,4},b,*p=a;,与b=*p++;等价的语句是
A.b=p++;                                               B.b=*(p++);
C.b=*(++p);                                           D.b=*++p;
9.C语言中的sizeof是
A.类型名                                                 B.运算符
C.变量名                                                  D.函数名
10.设int a[10],*p=a;,与数组元素a[5]等价的是
A.*(a+5)                                                  B.p[′5 ′]
C.p+5                                                       D.a+5
11.设typedef char *PT;,若有引用PT q[5];,则q是
A.字符型数组                                          B.字符型变量
C.字符型指针变量                                    D.字符型指针数组
12.正确定义二维数组并初始化的是
A.int a[3][ ]={{1,2,3},{4,5}};       B.int a[3][3]={a,b,c,d,e};
C.int a[ ][3]={1,2,3,4,5,6};          D.int a[3][3]=(1,2,3,4,5,6);
13.函数的递归调用是指
A.函数的自我调用                                   B.函数的嵌套调用
C.主函数调用系统函数                             D.系统函数调用主函数
14.设struct data{int a;float b;}c,*p=&c;,引用正确的是
A.*p.a                                                   B.p.b
C.p->a                                                      D.*p->b
15.文件操作"rb+"的含义是
A.只读文本文件                                       B.只读二进制文件
C.读写文本文件                                       D.读写二进制文件

二、填空题(本大题共10小题,每小题2分,共20)
16.判断方程ax2+bx+c=0有实根时的C语言逻辑表达式是__________。
17.设int i,j;,执行下列循环语句后输出“ABC”的行数是__________。
 for(i=0;i<5;i++)
 for(j=l; j<I; j++)printf("ABC\n");
18.结构化程序设计的三种结构分别是:选择结构、循环结构和__________。
19.设int a=l,b=2;,执行语句printf("%d",a>=b?a:b);后的输出结果是__________。
20.在C语言的指针使用中,NULL的值是__________。
21.设int x,y,t;,执行语句t=10+(x=3,y=5,x-y);后t的值是__________。
22.在C语言中,变量的四个存储类型符分别是auto、static、extern和__________。
23.设char s[ ]= "Star";,执行语句printf("%d",strlen(s));后的输出结果是__________。
24.设char *st="China\0Beijing";,执行语句printf("%s",st);后的输出结果是__________。
25.设int a=8,b=2,c=3;,执行语句a%=b+c;printf("%d",a);后的输出结果是__________。
三、程序分析题(本大题共4小题,每小题4分,共16)
 阅读下列程序,将输出结果写在答题纸上。
26.#define PR printf("a=%d,b=%d\n",a,b);
 #include<stdio.h>
 void f(int x, int *y)
  { *y=++x; }
 void main()
    {
int a=10,b=20;
 PR
 f(a,&b);
 PR
 }
27. #include<stdio.h>
 int fun(int m)
 {  static int n=l;
 ++m;++n;
 return(m+n);
 }
void main()
    {
 int a,b;
a=fun(0);b=fun(10);
  printf("a=%d,b=%d\n",a,b);
 }
28.#include<stdio.h>
void main( )
 {   int i;
        for(i=1;i<=10;i++)
 {   if(i<5)continue;
 printf("%3d",i);
 }
 printf("\n");
 }
29.#include<stdio.h>
 int x=1;            /*  全局变量  */
 void f(int i)
    {
 x=i+x;i++;
 }
void main( )
 {
      int y=5;
      x++;f(y);
 printf("y=%d,x=%d\n",y,x);
 }
四、程序填充题(本大题共3小题,每小题6分,共18)
 请将下列程序横线处缺少的部分补在答题纸上,使其能正确运行。
30.按下列形式输出英文字母。
 ABCD…WXYZ
 zyxw...dcba
 #include<stdio.h>
 void main( )
 {  char ch;
  for(ch=′A′;________;ch++)printf("%c",ch);  /*  第一空  */
________;   /* 第二空  */
  for(ch=′z′;ch>=′a′;________)printf("%c",ch);  /*  第三空  */
 printf("\n");
 }
31.输入x的值,按下列公式计算并输出y的值。
        y=
 #include<stdio.h>
void main( )
 {   int x,y;
 scanf(________);  /*  第一空  */
 if(x<0)y=-1;
else if(_______)y=0;   /*  第二空  */
else________;  /*  第三空  */
 printf("x=%d,y=%d\n",x,y);
 }
32.分别统计文本文件fs.txt中小写英文元音字母(a, e,i,o,u)的个数并输出。
 #include<stdio.h>
 void main( )
 {
 int a=0,e=0,i=0,o=0,u=0;
 char ch;
 ________;   /*  第一空  */
 sen=fopen("fs.txt","r");
    while(!feof(sen))
 {   ch=fgetc(sen);
 switch(________)     /*  第二空  */
 {
 case'a':a++;break;
 case'e':e++;break;
 case'i':i++;break;
 case'o':o++;break;
 case'u':u++;
 }
    }
 printf("%d,%d,%d,%d,%d\n",a,e,i,o,u);
 fclose(______);    /*  第三空  */
 }
五、程序设计题(本大题共2小题,每小题8分,共1 6)
33.任意输入一个三位正整数,十位上的数字不动,将个位和百位上的数字交换,构成一个 新的正整数后输出。(例如:523变为325)
34.从键盘输入a1,a2….,a20,按下列公式计算并输出bl, b2, ….,b10的值。
本自考试题WORD文档下载:
全国2012年10月自考试题00342高级语言程序设计(一).doc

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

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