资源描述
“成人教育”期末考试C语言程序设计A 试题2013年1月一.选题(每小题2分,共2 0分)1.由C语言源程序文件编译而成的目标文件的缺省扩展名为( )A. cpp B.c C. exe D. obj 2.设x和y均为逻辑值,则x川y为假的条件是( )。A.它们均为真 B.其中一个为真C.它们均为假 D.其中一个为假3.枚举类型中的每个枚举常量的值都是一个( )。A.整数 B.浮点数C.字符 D.记录4;循环语句for(i=O; i5)的相反表达式为_.6.若x=5,y=10,则x! =y的逻辑值为_.7.假定二维数组的定义为“int a35”,则该数组所占存储空间的字节数为_.8.使用“typede char BB1050;”语句定义_为含有10行50列的二维字符数组类型。9.字符串“a:xxk数据”的长度为_.10.假定p所指对象的值为25,p+1所指对象的值为46,则*+p的值为_.1 1.假定一个数据对象为int*类型,则指向该对象的指针类型为_.12.假定一个结构类型的定义为“struct A int a, b; A*c;”,则该类型的长度为_.13.假定要访问一个结构对象x中的数据成员a,则表示方式为_.三、写出下列每个程序运行后的输出结果(每小题 6分,共3 0分)1. # includevoid main() int i, s=O; for(i=l;i+) if(s30) break; if(i%2= =0) s+ =i;printf(“s=%dn”, s) ;2. #include void main() int a9=36,25,48,24,55,40,18,66,20int i,b1,b2b1=b2=a0for(i=1,ib1)b1=ai if(aib2)b2=aiprintf(“%d %dn”,bl ,b2);3. # include void SB( char ch) switch( ch) case A: case aprintf(WW ); break; case B: case b: printf(GG ); break; default , printf(BB”); break; void main() char al =a ,a2= B ,a3= f; SB(al) ;SB(a2) ;SB(a3); printf(“n” )4. # include # define M6void main()int i ,X; int aM= 10 ,15,22,37,46,58 ; for(i=O; iM/2; i+) x=ai; ai=aM-l一i; aM-l一i=x; for(i=O; i6; i+) printf(%d ,ai) ; print f(“n”;)5. # include struct Worker char namel5; int age; float pay; void main()struct Worker x= wanghua ,52, 2350; struct Worker y,*p; y=x; p=&x; printf( % d % 7. 2fn , y. age+p一age, p一pay+20) ;四.写出下列函数的功能(每小题6分,共12分)1. int FH()int x,y=0;scanf(“%d”,&x);while (x!=-1)y+=x; scanf(“%d”,&x); return y;函数功能:2. int FF(struct IntNode*f /f为指向一个单链表的表头指针int n=O; if(! f) return 0; while(f) n+f=f-nextreturn n假定struct IntNode的类型定义为: struct IntNode int data; struct IntNode*next; ;函数功能: 五、按题目要求编写程序或函数(每小题6分,共1分) 1.编写一个程序,利用while循环,计算并打印输出1+1/2+1/3+.+1/n的值,其中正整数n值由键盘输入。假定求和变量用s um表示,计数变量用i表示, s um、i和n均定义为全局变量, s um和i的初值分别被赋予O和1. 2. 根据函数原型void DD(int a, int n, int MM)编写函数定义,利用双重循环查找并打印输出数组an中任何两个元素的值等于MM值的元素值。假定a i+aj等于MM,则输出格式为: (ai,aj )。
展开阅读全文