自学考试、计算机基础与程序设计(09.4-12.7)试题汇总

发布时间 : 星期一 文章自学考试、计算机基础与程序设计(09.4-12.7)试题汇总更新完毕开始阅读

C.1

8.下面程序段的循环次数是( ) int k=2;

while(k= =0) printf (″%d″,k); k--;printf (″\n″); A.0次 C.2次

9.下面程序段的输出结果是( ) for(i=1;i<3;i++) for(j=1;j<3;j++) printf(″%d”,i+j); A.2 3 3 4 C.

D.2

B.1次 D.无限次

B.2 3 4 D.

2334

234

10.若有定义int a[4]={1,2,3,4};则表达式a[a[2]- 3*a[0]+1]的值是( ) A.1 C.3

B.2 D.4

11.在C语言程序中,关于函数的定义和调用,以下描述正确的是( ) A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可以嵌套 C.函数的定义和函数的调用均不可以嵌套 D.函数的定义和函数的调用均可以嵌套

12.关于main函数,以下说法中正确的是 ( )

A.C语言程序总是从有定义的函数起顺序执行,在main函数中结束 B.在C语言程序中,被调用的函数必须在main()函数中定义 C.C语言程序中的main()函数必须放在程序开始部分 D.C语言程序总是从main()函数开始执行

13.若要定义一个长整型的变量a和一个指向变量a的指针变量q,下面正确的定义语句是( ) A.long a,*q=a; C.long*q=&a,a;

B.long a,*q=&a; D.long a,q=&a;

14.若有说明long int x[5];下面能正确表示数组元素地址的是( ) A.&x[3] C.&x+1

B.&x D.*x

15.下面关于结构体类型的定义正确的是( ) A.struct ABC

B.struct ABC

{ int a char b char *p }

C.struct ABC { int a; char b; char *p; };

{ int a; char b; char *p; }

D.struct ABC { int a, char b, char *p, };

16.下面列出的位运算符中,表示按位与操作的是 ( ) A.~ C.&

B.! D.^

17.下面各个位运算符优先级从左到右依次升高的是 ( ) A.> > | & ~ C.| & > > ~

B.| > > & ~ D.~ | & > >

18.设有说明:int u=1,v=3;表达式:u<<=v的值是( ) A.0 C.3

B.1 D.8

19.如果将文件指针fp指向文件末尾,正确的语句是 ( ) A.feof(fp); C.fseek(fp,0L,0);

B.rewind(fp); D.fseek(fp,0L,2);

20.若要在C盘TC目录下,建立一个a1.dat的文本文件,正确使用打开文件的函数是( )

A.fopen(″C:\\\\ TC \\\\ a1.dat″,″r″) B.fopen(″C:\\ TC \\ a1.dat″,″r″) C.fopen(″C:\\\\ TC \\\\ a1.dat″,″w″) D.fopen(″C:\\ TC \\ a1.dat″,″w″) 二、多项选择题 (本大题共5小题,每小题2分,共10分)

在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。 21.下面属于合法的C语句的有 ( ) A.表达式语句 C.子程序调用语句 E.循环语句

22.下面循环语句中,没有“无限循环”错误的循环语句有 ( ) ..A.for(;;);

B.for(i=1;i<10;i++); B.函数调用语句 D.空语句

C.while(1);

E.do{循环体)while(1);

D.while(0);

23.设有声明:int a[5]={1,3,5,7,9);下面表达式的结果为10的有 ( ) A.a[l]+a[3] C.2*a[2] E.a[1]+[-a[2]+a[3]

24.若有如下定义及赋值: int x=5,*p,*pl; p=&x; pl=p;

则可以输出变量x的值的语句有 ( ) A.printf(″%d\n″,x); C.printf(″%d\n″,p1); E.printf(″%d\n″,*p1); 25.设有关于结构体类型的定义: struct boat { char name[10]; int weight; }myboat,*ps;

下面各项中语句都正确的有 ( ) A.myboat.name=″Li″。 myboat.weight=1600; B.ps=&myboat;

strcpy(ps->name,″Wuhan″); C.ps=&myboat; ‘ Ps->weight=2700;

D.strcpy(myboat.name,″Wine″); ps=&myboat;

E.ps=&myboat,strcpy(myboat.name,″Shanghai″); Ps->weight=5512;

三、简答题 (本大题共4小题,每小题4分,共16分)

26.写出将x,y,z,w分别声明为整型变量、短整型变量、长整型变量和无符号整型变量的语句。

27.将下面for循环的程序段,用含while循环的程序段实现。 for(s=0,i=1;i<=10;i++) s+=i;

B.printf(″%d\n″,*p); D.printf(″%d\n″,&x); B.a[2]-2*a[1] D.a[0]+a[4]

28.简述声明语句:char *p[4];的含义。 29.设有声明: struct cjd { long bh; long int xq; char xm[9]; float score[3];

}x={201101,2,″张大力″,76,85.0,90);

简单回答(1)结构体名;(2)结构体类型变量;(3)结构体类型变量所占字节数;(4)结构体成 员x.score[2]的值。

四、阅读分析题 (本大题共6小题,每小题5分,共30分) 30.写出下面程序的运行结果 main() {

int a=1,b=2,c=3; ++a; b=b+a: c=c/2;

printf(″%d,%d,%d\n″,a,b,c); }

31.写出下面程序的运行结果 main() {

char ch; ch=′a′; switch(ch) {

case′a′:printf(″*\n″);

case′b′:printf(″**\n″); case′c′:printf(″***\n″); }

ch=′b′; switch(ch) {

case ′b′:printf(″**\n″); case ′a′:printf(″*\n″);break;

联系合同范文客服:xxxxx#qq.com(#替换为@)