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

全国2002年10月自考(课程代码:00342)高级语言程序设计(一)试题

2018-06-08 13:33来源:重庆自考网
全国2002年10月高等教育自学考试
高级语言程序设计(一)试题
课程代码:00342
一、单项选择题(在每小题的四个备选答案中选出一个正确答案,并将其号码填在题干的括号内。每小题1分,共20分)
1.C语言不能选用的字母是(      )                                                              
  A.w                 B.π              C.I             D.i
2.构成一个C程序的是(      )
  A.一个主函数和若干个非主函数            B.若干个主函数和若干个非主函数
  C.一个主函数和最多一个非主函数        D.若干个主函数和最多一个非主函数
3.设 int m1=5,m2=3;表达式m1>m2?(m1=1):(m2=-1)运算后,m1和m2的值分别是(      )
  A.1和-1                               B.1和3
  C.5和-1                               D.5和3
4.设float m=4.0,n=4.0;使m为10.0的表达式是(      )
  A.m-=n*2.5                            B.m/=n+9
  C.m*=n-6                              D.m+=n+2
5.表达式5&2||5|2的值是(      )
  A.0                                   B.1
  C.2                                   D.3
6.对于do-while语句,错误的说法是(      )
  A.先执行循环体后判断循环条件
  B.循环体至少要执行一次
  C.循环体有可能一次也不执行
  D.循环体中可以包含若干条语句
7.设int x=-1;执行表达式++x||++x||++x后,x的值是(      )
  A.0              B.1                 C.2             D.3
8.设int a=7,b=8;则printf(″%d,%d″,(a+b,a),(b,a+b));的输出是(      )
  A.7,15          B.8,15             C.15,7         D.出错
9.设int a[10];则对a数组元素的错误引用是(      )
  A.a[5]         B.*(a+1)            C.a[10-10]    D.a(5)
10.设char c[5]={′a′,′b′,′\0′,′c′,′\0′};则printf(″%s″,c)的输出是(      )
  A.′a′′b′                         B.ab
  C.abc                                D.″ab\0c″
11.设double * p[6];则(      )
  A.p是指向double型变量的指针
  B.p是double型数组
  C.p是指针数组,其元素是指向double型变量的指针
  D.p是数组指针,指向double型数组
12.设char *s=″china″;则printf(″%s,%c,%c\n″,s,*s,s[3]);的输出是(      )
  A.china, c,n                         B.china,china,i
  C.c,c,n                              D.china,china,n
13.全局变量的存储类型可以定义为(      )
  A.auto或static                       B.extern或register
  C.auto或extern                       D.extern或static
14.函数调用语句fun((((1,2),3),4));中参数的个数是(      )
  A.1               B.2                C.3             D.4
15.对于下列定义的枚举型
  enum colorl {yellow,green,blue=5, red,brone};
  则枚举常量yellow和red的值分别是(      )
  A.3,6                               B.1,6
  C.0,6                               D.0,3
16.设有定义struct ru{long x;float y;} time,*timep=&time;则对time中成员x的正确引用是(      )
  A.rnu.time.x                          B.timep.x
  C.(* timep).x                        D.time->x
17.设FILE*fp;若fp指向的文件未结束,则函数feof(fp)的返回值为(      )
  A.0                                  B.true
  C.非0                                D.false
18.C语言中,系统自动打开的文件是(      )
  A.二进制文件                         B.随机文件
  C.非缓冲文件                         D.设备文件
19.执行下列程序
  #define  R  0.5
  #define  AREA(x) R*x*x
  main ()
  {int a=1, b=2;
    printf (″%5。1f\n″, AREA(a+b));
  }
  后输出的结果是(      )
  A.0.0                B.0.5           C.3.5           D.4.5
20.执行下列程序
  #include  ″stdio. h″
  min ()
  {printf(″%d\n″,NULL);}
  后输出的结果是(      )
  A.-1                B.0             C.1              D.2
二、填空题(每小题2分,共20分)
21.如果在定义局部变量时省略了存储类型符,则默认的类型是________。
22.利用运算符__ __,下列两个语句
  b=5+a;a-=1;
  的功能可以仅由一个语句实现,这个语句是________。
23.“n是小于整数m的偶数”的C语言表达式是________。
24.定义函数时,若函数的类型缺省,则函数的默认类型是________。
25.语句for(i=1;i==1;i++);循环的次数是________。
26.在C语言中,优先级最低的运算符是________。
27.设
  union
  {
    int a;
    char c[99];
  }b;
  则sizeof(b)的值是________。
28.设 int a[10]={1,2,3};则*(a+3)的值是________。
29.设short a[3][4];如果数组a首地址为2000,则a+1的地址是________。
30.设 int a [2][4],(*p)[4]=a;用指针变量p表示数组元素a[1][2]为________。
三、程序分析题(每小题5分,共25分)
   阅读下列程序,将输出结果写到各题右侧的空白处
31.min()
   {  int a =10,i=1,j=2;
      printf(″%d,%o,%x\n″,a,a,a);
      printf(″i=%d\n″,i++);
      printf(″%c\n″,i==j?′A′:′B′);
   }
 
32.main()
   { int k; char a[]=″LANGUAGE″,b[]=″PROGRAM″;
     char *p=a,*q=b;
     for(k=0;k<=5;k++)
     if(*(p+k)==*(q+k)) printf(″%c″,*(q+k));
   }
 
33.main()
   { int a,b,c;
     a=10;b=20;c=30;
     a=(--b<=a)||(a+b!=c);
     printf(″%d,%d\n″,a,b);
   }
34.int x=30,y=50;
   sub(int x, int y)
   {
     y-x>y? x:y;
     return y;
   }
   main*()
   {
     {
       int x=100;
       printf(″%d\n″,sub(x,y));
     }
     printf(″%d,%d\n,x,y);
   }
 
35.f()
   {
     int x=1;
     return x++;
   }
   g()
   {
     static int x=1;
     return x++;
   }
   main()
   {
    int i,a=0,b=0;
    for(i=0;i<5;i++)
    {
      a+=f();
      b+=g();
    }
    printf(″a=%d\nb=%d\n″,a,b);
   }
四、程序填充题(本大题共3小题,每小题6分,共18分)
    给出下列程序,将横线处缺少的部分补上,使其能正确运行。
36.将十个数输入数组中,找出其中最大数和最小数并输出。
   main()
   {
     in i,max,min,a[10];
     for(i=0,i<10;i++)
        scanf(″%d″,&a[i]);
     max=a[0];
     min=a[0];
     for(i=1;i<10;i++)
     {
       if(a[i]>max)
         max=_____;  /* 第一空 */
         if(a[i]<min)
            _______;  /*第二空 */
     }
     printf(″max=%d,min=%d\n″,_______);   /*第三空 */
   }
37.根据对n的输入,求1+2+3+…+n的和。
   float sum(int x)
   {
     int i;
     float s;
     ________; /* 第一空 */
     for (i=1;i<=x;i++)
       s+=i;
     ________; /* 第二空 */
   }
   main()
   {int n;
    scanf(″%d″,________);  /* 第三空  */
    printf(″%f\n″,sum(n));
   }
38.建立一个磁盘文件,文件名和内容由键盘输入。
   #include ″stdio.h″
   main()
   {
     char ch, fname [20];
     _______________;  /*  第一空  */
     scanf(″%s,fname);
     if ((fp=fopen (________,″w″,))==NULL)  /* 第二空  */
         exit (0);
     ch=getchar ();
     while (ch!=′*′)
   {
     fputc (ch,fp);
     putchar (ch);
     ch=getchar ();
    }
    fclose ( ________);   /* 第三空  */
   }
   输入磁盘文件名:filec.c↙
   输入一个字符串:Program C*↙
五、程序设计题(第39题5分,第40、41小题各6分,共17分)
39.输入两个实数,按先大后小的顺序输出。
40.采用递归方法编写一个计算x的n次方的函数(不用写主函数调用)。
   公式xn=
   函数头部:double power(double x,int n)
41.输入整数x,如果该数为0则输出“zero”,否则判断奇偶性,若为奇数则输出“odd”,若为偶数则输出“even”。
 
本自考试题WORD文档下载:
全国2002年10月自考(课程代码:00342)高级语言程序设计(一)试题

上一篇:全国2001年10月自考(课程代码:00342)高级语言程序设计(一)试题

下一篇:全国2003年1月自考(课程代码:00342)高级语言程序设计(一)试题