欢迎您访问浙江自考网!网站为考生提供浙江自考信息服务,供学习交流使用,非政府官方网站,官方信息以浙江省招生考试院为准 登录  网站导航

浙江自考网

自考热线:16657169113

自考办电话 | 在线提问 | 公众号

全国2008年10月高等教育自学考试高级语言程序设

编辑整理:浙江自考网 发表时间:2018-05-24   【

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

一、单项选择题(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内.错选、多选或未选均无分.

1.在一个C语言程序中(  )
A. 主函数只能有一个
B. 主函数可以有多个
C. 非主函数只能有一个
D. 主函数和非主函数都可以有多个

2.正确定义无符号整型变量m的语句是(  )
A. int m;
B. unsigned int m;
C. signed int m;
D. unsigned signed m;

3.不属于字符型常量的是(  )
A. ″s″
B. '8'
C. 'A'
D. '\n'

4.设int x=2,y=4;,值为非0的表达式是(  )
A. 1/x*y
B. 1/(x*y)
C. 1.0/x/y
D. 1/x/ (double)y

5.设int a=2,b=5;,结果为0的表达式是(  )
A. a%b
B. a&b
C. a=b
D. a!=b

6.设int a=0;,错误的语句是(  )
A. ++a;
B. a++;
C. a=-a;
D. (-a)++;

7.设int a=1,b=2,c=3,d=4,f;,执行语句f=(a!=b)?c++:d++;后f的值是(  )
A. 2
B. 3
C. 4
D. 5

8.设int m=5;,语句while (m==0)printf (″%d″,m-=2);的循环体执行的次数是(  )
A. 0
B. 1
C. 2
D. 无限

9.下列运算符优先级最高的是(  )
A. +=
B. ,
C. !
D. ?:

10.定义二维数组并初始化,正确的是(  )
A. int a[3][ ]={{1,2,3},{4,5,6}};
B. int a[ ][3]={{1,2,3},{4,5,6}};
C. int a[3][3]=[{1,2,3},{4,5,6}];
D. int a[ ][ ]={1,2,3,4,5,6};

11.有关变量的叙述,正确的是(  )
A. 形式参数是全局变量
B. a和A在C语言中是同一个变量
C. 函数体内定义的变量为全局变量
D. 在所有函数之外定义的变量为全局变量

12.若定义的函数为float*fun( ){……},则函数的返回值是(  )
A. float 型数据
B. void 型数据
C. float型指针
D. void型指针

13.设int a[10],*p=a;,数组元素a[4]的正确引用是(  )
A. *(p+4)
B. p+4
C. *p+4
D. a+4

14.合法的用户标识符是(  )
A. default
B. #define
C. a+b
D. book

15.使用系统函数sprt( )时,应在程序开头写上的编译预处理命令是(  )
A. #include
B. #include
C. #include
D. #include


二、填空题 (本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案.错填、不填均无分.

16.赋值运算符的结合性是_______.
17.设char ch;,判断ch为数学字符的逻辑表达式是_______.
18.设typedef float REAL;REAL x=1;,表达式x/2的值是_______.
19.转义字符'\n'的含义是_______.
20.设int a=12;,语句printf(″%d\n″,(a/3,a%3,a/10>0));的输出结果是_______.
21.函数中未指定存储类型的局部变量,其隐含的存储类型是_______.
22. 若全局整型变量未初始化,则默认的初始值是_______.
23.设int a,*p=&a;,通过指针变量p为a输入值的scanf语句是_______.
24.设char*s=″abc″;,语句for(;*s!='\0';s++) printf (″W″);的输出结果是_______.
25.设struct student

  char name [20];
  char sex;
}stu;
语句printf(″%d\n″,sizeof(stu));的输出结果是_______.

三、程序分析题(本大题共4小题,每小题4分,共16分)
阅读下列程序,请将输出结果写到各题右侧的空白处.
26. #include
void main()
{
  int i=11,j;
  j=i%3;
  switch (j)
    { case 1:
     case 2: printf(″%d\n″,j); break;
     default: printf(″%d\n″,i);
    }
}
27. #include
int fx (int n)
{
  int s;
  if (n==0) s=0;
  else s=n+fx (n-2);
  return s;
}
void main()
{
  printf (″%d\n″,fx(8));
}
28. #include
#include
void main ()
{
  char *pa, a [20]=″Beijing2008″;
  for (pa=a+7;*pa!='\0';pa++) putchar (*pa);
  putchar ('\n');
}
29. #include
#define N 6
void main ()
{
  int a [N]={2,5,-6,4,-9,10}, i;
  for (i=0;i  {
    if(a[i]<0) continue;
    printf(″% 3d″,a[i]);
  }
  printf (″\n″);
}

四、程序填充题(本大题共3小题,每小题6分,共18分)
请将下列程序横线处缺少的部分补上,使其能正确运行.
30.输入100名学生的出生月份,统计并输出每个月份过生日的学生人数.
#include
#define N 100
void main ()
{
  int i, month;
  int birth [13]={0}; /*birth [1]~birth [12]分别保存1~12月过生日的学生数*/
  for (i=1;i<=N;i++)
  {
    scanf(″%d″, _______); /*第一空*/
    if (month >=1 && month<=12) birth [month]++;
  }
  for (i=1; _______;i++) /*第二空*/
  printf(″%d month_______ \n″,i, birth [i]); /*第三空*/
}
31.输入n(n≥1), 计算1+(1+2)+(1+2+3)+…….+(1+2+……+n)的值.
void main ( )
{
  int i,n;
  long sum=0;long cal (int);
  scanf (″%d″,&n);
  for (i=1;i<=n;i++) sum =sum+cal(_______); /*第一空*/
  printf (″1+(1+2)+…+(1+2+…+n)=%ld\n″,sum);
}
long cal (_______) /*第二空*/
{
  static long s=0;
  s=s+m;
  _______; /*第三空*/
}
32.将文件data1.txt的内容复制到文件data2.txt中.
#include
void main ( )
{
  char ch;
  FILE *f1,*f2;
  f1=fopen (″data1.txt″,″_______″); /*第一空*/
  f2=fopen (″data2.txt″,″w″);
  do
  {
   _______=fgetc (f1); /*第二空*/ 
   fputc (ch, _______); /*第三空*/
  } while (!feof (f1));
  fclose (f1); fclose (f2);
}

五、程序设计题(本大题共2小题,每小题8分,共16分)
33.输入x的值,按下列公式计算并输出y的值(保留两位小数).
y=
34.输入10个整数到数组a中并输出,将数组各元素依次向后循环移动一个位置(如下图),输出移动后的数组a.

移动前:

a[0]

a[1]

a[2]

a[3]

a[4]

[1]  




浙江自考网课程中心

浙江自考网声明:

1、由于各方面情况的调整与变化,本网提供的考试信息仅供参考,考试信息以省考试院及院校官方发布的信息为准。

2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。

浙江自考便捷服务

浙江自考网微信交流群