本站为重庆自考民间交流网站,最新自学考试动态请各位考生以重庆教育考试院(www.cqksy.cn)各区自考办最新通知为准。

重庆自考网 > 历年真题 > 重庆2016年10月自考《高级语言程序设计一》真题

重庆2016年10月自考《高级语言程序设计一》真题

王卫孙 2020-04-02 历年真题

 

一、单项选择题(本大题共15小题,每小题2分。共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。错涂、多涂或未涂均无分。

1.C语言的保留字(又称关键字)是(  )

A.add

B.main

C.real

D.typedef

2.正确的C语言整型常数是(  )

A.3

B.3.0

C.1E0

D.false

3.设int a, b;,表达式a=2, b=5, --a+b的值是(  )

A.5

B.6

C.7

D.8

4.设int a=0;,循环次数为无限的语句是(  )

A.while(a);

B.for(a; a; a);

C.for(a; a==0;);

D.do{a++;} while(-a);

5.do{…)while(表达式)中“表达式”的类型是(  )

A.任意的

B.关系的

C.算术的

D.逻辑的

6.设int a=1, b=2;,能将a的值赋给b的表达式是(  )

A.a=b

B.b+=a

C.a||(b=a)

D.a&&(b=a)

7.函数中定义的变量类型可以是(  )

A.auto型

B.static型

C.register型

D.以上三种类型

8.关于函数正确的说法是(  )

A.函数必须有返回值

B.函数可以嵌套定义

C.返回值可以是指针类型

D.函数必须有形式参数

9.设int s[3] [4]={1,2,3,4,5,6};,值为2的数组元素是(  )

A.s[0] [0]

B.s[0] [1]

C.s[1] [0]

D.s[1] [1]

10.下列不是递归函数的是(  )

A.int t(int n)

{ if(n==0) return 0;

else return (n-1);

}

B.int t(int n)

{ if(n==0) return 0;

else return t(n-1);

}

C.int t(int n)

{ if(n==0) return 0;

else return n+t(n-1);

}

D.int t(int n)

{ if(n==0) return 1;

else return n*t(n-1);

}

11.设float w=0; int x=1, y=2; char z='3';,下列语句错误的是(  )

A.switch(x)

{ case 0:

case 1:

case 2:

default: ;

}

B.switch(y)

{ case 0:

case 1:

case 2:

default: ;

}

C.switch(z)

{ case 0:

case 1:

case 2:

default: ;

}

D.switch(w)

{ case 0:

case 1:

case 2:

default: ;

}

12.设char ch=65;,下列语句错误的是(  )

A.printf("%f\n", ch);

B.printf("%c\n", ch);

C.printf("%d\n", ch);

D.printf("%x\n", ch);

13.正确定义一维数组的是(  )

A.char s(20);

B.int n=20; char s[n];

C.#define N 20

char s[N];

D.int n;

scanf("%d", &n);

int s[n];

14.设int u=1, *p;,下列语句正确的是(  )

A.p=&u;

B.p=u;

C.&p=u;

D.u=&p;

15.当打开文件出现错误时,系统函数fopen( )的返回值是(  )

A.1

B.-1

C.非0

D.NULL

二、填空题(本大题共10小题,每小题2分,共20分)

11.设int n=11;,表达式n%5+n%7的值是_______。

12.执行语句printf("%d\n", 8>>2);后的输出结果是_______。

13.设char s[10]= "Olympic";,执行语句printf("%d\n",sizeof(s));后输出结果是_______。

14.三种逻辑运算符的优先级又高到低依次是_______。

15.设float m=8.8; int n=6;,执行语句printf("%d\n", (int)m+n);后输出结果是_______。

16.设struct { int a; float b; } c, *p=&c;,用指针引用成员b的方式是p->b或_______。

17.设int p=1,q=2,r=3;,表达式p>q< p>

18.系统函数int rewind(FILE *fp)的功能是_______。

19.函数调用时参数传递方式除地址传递外,还有_______。

110.使用系统函数getchar( )和putchar( )时,用到的文件包含命令县_______。

三、程序分析题(本大题共4小题。每小题4分,共16分)阅读下列程序,写出输出结果。

21.#include void main(){ int j; char *color[]={"red", "yellow", "blue",   "black", "white"}; for( j=0; j<5; j+=2) printf("%s\n", color[j]);}

22.#include void main(){ int i=10, j=0; switch (i%3) { case 0: i--;   j++; case 1: --i; ++j; break; default: ++i; j--; } printf("i=%d, j=%d\n", i,   j);}

23.#include int i=1;int fun(int j){ return (++i+j);}void main(){ int   j; for(j=1; j<=3; j++) printf("%d\n", fun(j));}

24.#include void main(){ int i; char *strp="****"; for(i=0; i<4;   i++) printf("%s\n", strp+i);}

四、程序填充题(本大题共3小题,每小题6分,共18分)

31.计算某学生三门课的平均成绩并输出。#include typedef struct student{ char name[20];   float math, physics, chemistry, average;}_______; /*第一空*/void main(){ STU   s={"ZhangSan", 88.5, 90.0, 73.0}; s.average=_______; /*第二空*/   printf("平均成绩=%.1f\n",_______); /*第三空*/}

32.键入一串字符,以回车换行符为结束标志,统计并输出其中小写英文字母的个数。#include void main(){ char   letter; int sum=_______; /*第一空*/ while((letter=getchar())!='\n') if(_______)   sum++; /*第二空*/ printf("小写英文字母个数sum=%d\n",_______); /*第三空*/}

33.从键盘为二维整型数组a输入数据,输出该二维数组的转置b。#include #define M 2#define N 3void   main(){ int a[M][N], b[N][M], i, j; printf("二维数组a:\n"); for(i-0; i< printf(?\n?);   j++)printf(?%5d?,b[i][j]); i

五、程序设计题(本大题共2小题,每小题8分。共16分)

41.从键盘输入一串字符(以#作为结束标志)显示到屏幕上并写入文本文件ch.txt。

42.(1)编写函数f计算

重庆2016年10月自考《高级语言程序设计一》真题

的值。(2)编写主函数,从键盘输入x和n的值,调用函数f计算并输出结果(保留两位小数)。

 

     

Tags:

自考微信公众号

重庆自考微信公众号

扫一扫上方二维码

标签列表