电大春C语言程序设计形成性考核册答案_第1页
电大春C语言程序设计形成性考核册答案_第2页
电大春C语言程序设计形成性考核册答案_第3页
电大春C语言程序设计形成性考核册答案_第4页
电大春C语言程序设计形成性考核册答案_第5页
免费预览已结束,剩余25页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C 语言程序设计形成性考核册共24页-1-C 语言程序设计形成性考核作业一一、选择题1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。A. main B.MAIN C.name D.funtion2.C语言原程序文件的缺省扩展名为(D)。A.cppB.exeC.objD.C3.由C语言目标文件连接而成的可执行的缺省扩展名为(B)。A.cppB.exeC.objD.C4.程序运行中需要从键盘输入多于一个数据时, 各数据之间应使用(D)符号作为分隔符。A.空格或逗号B.逗号或回车C.回车或分号D.空格或回车5.每个C语言程序的编译错误分为(B)类。A. 1 B.2 C.3 D

2、.46.设x和y均为逻辑值,则x & y为真的条件是(A)。A.它们均为真B.其中一个为真C.它们均为假D.其中一个为假7.设有语句“int a=12;a+=a*a;,则执行结束后,a的值为(C)。A. 12 B.144 C.156 D.288& x0 & x=10的相反表达式为(A)。A. x10 B.x10 C.x=0 | x0 & x109.字符串“a+b=12n”的长度为(B)。A. 6 B.7 C.8 D.910.在下列符号常量定义中。错误的定义语句格式为(C)。A. const M仁10; B.con st int M2=20; C.con st M

3、3 10 D.co nst char mark=3;11.带有随机函数的表达式rand()%20的值在(C)区间内,A. 119 B.120 C.019 D.02012.当处理特定问题时的循环次数已知时,通常采用(A)循环来解决。A.for B.while C.do-while D.switch13.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容 易被改写为(B)语句。A. for B.if C.do D.while14.for语句能够被改写为(D)语句。A.复合B.if C.switch D.while15.下面循环语句执行结束后输出的i值为(B

4、)。for(i nt i=0;i n /2)coutie ndl;break;A. n/2 B.n/2+1 C.n/2-1 D.n-116.在下面循环w语句中内层循环体S语句的执行次数为(D)。for(i nt i=0;i n ;i+)for(i nt j=i;j n ;j+)S;2A. n B.(n+1)/2 C.n(n-1)/2 D.n(n +1)/217.在下面的do循环语句中,其循环体被执行的次数为(A)。C 语言程序设计形成性考核册共24页-2-in t i=0;do i+;while(i*i0|x5的相反表达式为_x+yb | b=5的相反表达式为a5 | by逻辑值为false_

5、(0)_。35._若x=5,y=10,则x=y逻辑值为true_(1)_。36.假定x=5,则执行“a=(x?10:20);”语句后a的值为_10_。37.执行“typedef int DataType;”语句后,在使用int定义整型变量的地方都可以使用_DataType_来定义整型变量。38.在switch语句中,每个语句标号所含保留字case后面的表达式必须是_整型_。39.作为语句标号使用的C保留字case和default只能用于_switch_语句的定义体中。40.在switch语句时,在进行作为条件的表达式求值后,将从某个匹配的标号位置起向下执行,当碰到下一个标号位置时(停止/不停止

6、)不停止执行。41.若do循环的“尾”为“while(+i10)”, 并且i的初值为0,同时在循环体不会修改i的值,由循环体将被重复执行_10次后正常结束。42._当在程序执行到break语句时, 将结束本层循环语句或_switch语句的执行。43.在程序中执行到_return_语句时,将结束所在函数的执行过程,返回到调用该函数的44.在程序执行完 主(main)_函数调用后,将结束整个程序的执行过程,返回到操作系统或C语句集成开发环境界面窗口。三、写出下列每个程序运行后的输出结果1. #i ncludevoid mai n()int x=5;switch(2*x-3)case 4:pri n

7、tf(%d ,x);case 7:pri ntf(%d ,2*x+1);case 10:pri ntf(%d ,3*x-1);break; default:pri ntf(%s ,”defaultn);C 语言程序设计形成性考核册共24页-4-printf(%sn,”switch end.);输出结果为:11 14 switch endPress any key to con ti nue2. #i ncludevoid mai n()int i,s=0;for(i=1;i=6;i+)s+=i*i;prin tf(s=%dn,s);输出结果为:s=91Press any key to con

8、ti nue3. #i ncludevoid mai n()in t i,s1= 0,s2=0;for(i=0;i10;i+) if(i%2)s1+=i; else s2+=i;prin tf(%d %dn ”,s1,s2);输出结果为:25 20Press any key to con ti nue4. #i ncludevoid mai n()int n=10,y=1;while( n_)y+;y+; prin tf(y=%dn,y);输出结果为:y=21Press any key to con ti nue5. #i ncludevoid mai n()int f,f1,f2,i;C 语

9、言程序设计形成性考核册共24页-5-f1=f2=1;prin tf(%d %d ,f1,f2);for(i=3;i=10;i+)f=f1+f2;prin tf(%d ,f); if(i%5=0)pri ntf(n); f1= f2;f2=f;prin tf(n);输出结果为:1 1 2 3 58 13 21 34 55Press any key to con ti nue6. #i nclude#in cludevoid mai n()int i,n;for(n=2; n=20; n+)int temp=(i nt)sqrt (n );/sqrt (n)for(i=2;itemp)printf

10、(%d ”,n);prin tf(n);输出结果为:2 3 5 7 11 13 17 19Press any key to con ti nue7. #i nclude#in cludecon st int M=20;void mai n()int i,c2,c3,c5;c2=c3=c5=0; for(i=1;i=M;i+)if(i%2=0)c2+;if(i%3=0)c3+;if(i%5=0)c5+;prin tf(%d %d %dn ,c2,c3,c5);求出n的平方根并取整C 语言程序设计形成性考核册共24页-6-输出结果为:10 6 4Press any key to con ti nu

11、e8. #i nclude#in cludecon st int M=20;void mai n()int i,s;for(i=1,s=0;i15;i+)if(i%2=0 | i%3=0)continue; prin tf(%d ,i);C 语言程序设计形成性考核册共24页-7-s+=i;prin tf(%dn,s);输出结果为:1 5 7 11 13 37Press any key to con ti nueC 语言程序设计形成性考核作业二一、选择题1.在下面的一维数组定义中,(C)语句有语法错误。A.int a=1,2,3;B.int a10=0;C.int a;2.在下面的二维数组定义中

12、,(C)语句是正确的。A.int a5; B.int a5;3假定一个二维数组的定义语句为A.2B.4C.64.假定一个二维数组的定义语句为A.0B.4C.85.将两个字符串连接起来组成一个字符串时, 选用(C)函数。、填空题1.假定维数组的定义为“char * a8;,则该数组所含兀素的个数为8。2.假定维数组的定义为“char * a8;”,则该数组所占存储空间的字节数为323.假定二【维数组的定义为“int a35”,则该数组所占存储空间的字节数为60。4.假定二【维数组的定义为“char aMN;,则该数组所所含兀素的个数为M*N。5.假定二 二维数组的定义为“double aMN;,

13、则每个数组兀素的仃下标取值氾围在0M-1之间。6.假定二 二维数组的定义为“double aMN;,则每个数组兀素的列下标取值氾围在0N-1之间。7.使用“typedef char BB1050;”语句定义_BB_为含有10行50列的二维字符数组类型。D.int a5 ;nD.int a(10)”,则元素a12的值为(C)。”,则元素a21的值为(A)。C.inta3=1,3,5,2;“int a34=3,4,2,8,6; D.8“inta34=3,4,2,8,6;D.6A.strlen() B.strcap()C.strcat()D.strcmp()C 语言程序设计形成性考核册共24页-8-

14、&存储字符需要占用存储器的_1_个字节空间。9.空字符串的长度为_0_。10.存储一个空字符串需要占用_1个字节。11.字符串”a:_数据”的长度为11。12.用于存储一个长度为n的字符串的字符数组的长度至少为n+1。13._strcmp函数用于进行两个字符串之间的大小比较_。14.Strcpy函数用于把一个字符串 复制到另一个字符数组空间中。15.一个二维字符数组a1020能够存储_ 10_个字符串。16.一个二维字符数组a1020能够存储的每个字符串的长度至多为_19_.三、写出下列每个程序运行后的输出结果1. #i ncludevoid mai n()int a10=12,39,

15、26,41,55,63,72,40,83,95;int i,i仁0,i2=0;for(i=0;i10;i+)if(ai%2=1)i1+;else i2+; prin tf(%d %dn,i1,i2);输出结果为:6 4Press any key to con ti nue2. #i nclude#in cludevoid mai n()int i;char *a5=stude nt,worker,cadre,soldier,peasa nt;char *p1,*p2;p仁p2=a0;for(i=0;i0)p1=ai;if(strcmp(ai,p2)0)p2=ai;prin tf(%s %sn,

16、p1,p2);输出结果为:worker cadreC 语言程序设计形成性考核册共24页-9-Press any key to con ti nue3. #i ncludeint a10=4,5,6,15,20,13,12,7,8,9;void mai n()int i,s0,s1,s2;s0=s仁s2=0;for(i=0;i10;i+)switch(ai%3)case O:sO+=ai;break;case 1:s1+=ai;break;case 2:s2+=ai;break;printf(%d %d %dn,s0,s1,s2);输出结果为:42 24 33Press any key to c

17、on ti nue4. #i ncludevoid mai n()char a=abcdbfbgacd; int i1=0,i2=0,i=0;while(ai) if(ai=a)i1+; if(ai=b)i2+;i+;prin tf(%d %d %dn,i1,i2,i);输出结果为:2 3 11Press any key to con ti nue5. #in clude void mai n()int a34=1,2,7,8,5,6,10,6,9,12,3,4;int m=a00;int ii=O,jj=O;C 语言程序设计形成性考核册共24页-10-int i,j;for(i=0;i3;i

18、+)for(j=0;jm)m=aij;ii=i;jj=j; prin tf(%d %d %dn,ii,jj,aiijj);输出结果为:2 1 12Press any key to con ti nue6. #i ncludevoid mai n()int a,b;for(a=1,b=2;b50;)prin tf(%d %d ,a,b);a=a+b;b=a+b;prin tf(n);输出结果为:1 2 3 5 8 13 21 34Press any key to con ti nue四、写出下列每个函数的功能1. #in cludeint SA(int a,int b)if(ab)return

19、1;else if(a=b)return 0;else return -1;函数功能为:根据实参a大于、等于或小于实参b,返回1,0或-12. #in cludeint SC(int a,int b,int c)if(a=b & a=c)retur n a;if(b=a & b=c)retur n b;return c;C 语言程序设计形成性考核册共24页-11-函数功能为:返回实参a、b、c中的最大数3. double SF(double x,int n)n为大于等于0的整数double p=1,s=1;for(i=1;i=n; i+)p*=x;s+=p/(i+1);retu

20、rn s;函数功能为:计算x+x2/2+x3/3+xn/(n+1)的值C 语言程序设计形成性考核册共24页-12-4.#includeint SC(i nt x)int a=(i nt)sqrt(x);int i=2;while(i=a)if(x%i=O)break;i+;if(i=0)return 0;else return 1;函数功能为:判断一个整数是否是素数5. #in cludevoid tran s(i nt x)char a10;int i=0,rem;dorem=x%16;x=x/16;if(remO)pri ntf(%c,a-i);prin tf(n);函数功能为:将一个整数

21、化成十六进制数五、根据下列每个题目要求编写程序1.编写一个函数,函数头格式为void fun4(char *a , int b)”,分别求出由字符指针a所指向的字符串中包含的每种十进制数字出现的次数,把统计结果保存在数组b的相应元素。#in cludevoid fun4(char* a,int b)doC 语言程序设计形成性考核册共24页-13-if(*a=0 & *a=9)b*a-48+;while(*a+);/*void mai n()char * a=122333444499888;int b10=0;fun 4(a,b);for(i nt i=0;i10;i+)prin tf(

22、%d ”,bi);*/2.编写一个函数,函数头格式为double Mean(double aMN , int m , int n)”,要求返回二维数组amn中所有元素的平均值,假定在计算过程是采用变量v存放平均值。#in cludeconst int M=2,N=3;double Mean(double aMN, int m,int n )double v=0;for(int i=0;im;i+)for(i nt j=O;j n;j+)v+=aij;return v/(m* n);/*void mai n()double a23=1,2,3,4,5,6;prin tf(%lfn,Mea n(a

23、,2,3);*/3.编写一个递归函数“int FF(int a , int n)”,求出数组a中所有元素n个元素之积并返回。#in cludeint FF(int a , int n)int mul=1;if(n=1)mul*=a0;else mul=a n-1*FF(a, n-1);C 语言程序设计形成性考核册共24页-14-return mul;/*void mai n()int a6=1,2,3,4,5,6;prin tf(%dn,FF(a,6);*/4.编写一个主函数, 利用while循环,求出并显示满足不等式1+1/2+1/3+.+1/n5的最小n值。#in clude void m

24、ai n()double sum=0;int n=1;while(true)if(sum + 1/(double )n 5)break;elsesum += 1/(double )n;n+;printf(%d, %lfn,n,sum);5.编写一个主函数,求满足不等式22+42+n21000的最大n值,假定分别用i和s为取偶数值和累加值的变量,并限定使用do循环编程。#in cludevoid mai n()int s=0,i=2;dos+=i*i;if(s+(i+2)*(i+2)=1000)break;else i+=2;while(true);C 语言程序设计形成性考核册共24页-15-p

25、rin tf(i=%d,s=%d,i,s);6.编写一个主函数,计算并输出n的值,其中n值由键盘输入。#in cludevoid mai n()int s=0,n;printf(请输入n的值:”);scan f(%d,&n);for(i nt i=1;i=n ;i+)s+=i*i;prin tf( n=%d,s=%d, n,s);C 语言程序设计形成性考核册共24页-16-C 语言程序设计形成性考核作业三一、选择题1.在下面的(C)函数声明语句存在语法错误。A.AA(int a,int b);B.AA(int ,int)C.AA(int a;int b)D.AA(int a,int)2

26、在下面的(C)不能作为函数的返回类型。A.voidB.int C.newD.long3.下面正确的函数原型语句是(B)。A.int Function(void a);B.void Function(int);C.int Function(a);D.void int(double a);4.函数调用func(exp1,exp2),exp3*exp4-exp5)中所含实参的个数为(B)个。A.1 B.2 C.4D.55.下面的标识符中,(C)是文件级作用域。A.函数形参B.语句标号C.外部静态类标识符D.自动类标识符6.下面的标识符中,(B)具有全局级作用域。A.函数形参B.全局变量C.内部静态类

27、标识符D.自动变量符7.假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大(C)字节。A.1B.2C.4D.8&假定a为一个字符数组名,则a8的地址比该数组的首地址大(B)个字节。A.4B.8C.16D.329.假定a为一个数组名,则下面的(B)表示有错误。A.aiB.*a+C.*aD.*(a+1)10.用calloc函数创建具有10个整型元素的一维数组的正确语句是(C)。A.int *p=calloc(10,2);B.int *p=callo(10;C.int *p=calloc(10,4);D.int *p=malloc(10);11.假定变量m定义

28、为“int m=7;”,则定义p的正确语句为(B)。12.假定k是一个double类型的变量,则定义变量p的正确语句为(B)。B.double *p=&k;D.char *p=”Thank you!13.假定一条定义语句为int a10,x,*pa=a;”,若要把数组a中下标为3的元素赋值给x, 则不正确的语句为(D)。A.x=pa3; B.x=*(a+3); C.x=a3;D.x=*pa+3;14.假定有定义“int b10;int *pb;”,则不正确的赋值语句为(D)。A.pb=b; B.pb=&b0;C.pb=b+2;D.pb=b 5;A.int p=&m; B

29、.int *p=&m;C.int &p=*m;D.int *p=m;A.double p=&k;C.double & p=*k;C 语言程序设计形成性考核册共24页-17-A.deletep;B.delete(p); C.freep;D.free(p);15.假定指针变量p定义为“int *p=new int(100);”,要释放p所指向的动态内存,应使用语 句(A)。A.delete p; B.delete *p;C.delete &p;D.delete p;16.假定指针变量 应使用语句(Dp定义为“int *p=calloc(30,sizeof(i

30、nt);”,要释放p所指向的动态内存, )。C 语言程序设计形成性考核册共24页-18-二、填空题1在C语言中,一个函数由函数头和函数体_组成。2在函数外定义的变量称为全局变量,若没有被初始化则系统隐含对它所赋的初值为_0_。3如果一个函数只允许同一程序文件中的函数调用,则应在访函数定义前加上的C保留字为为_static_。4如果一个函数直接或间接地调用自身,这样的调用被称为递归_调用。#inelude命令包含该函数的原型语句所在头 文件。6函数形参的作用域是该函数的内部10假定a是一个指针数组,则a+1所指对象的地址比a地址大_4_字节。11._若要把一个整型指针p转换为字符指针,则采用的强

31、制转换表达式为(char*)p_12假定一个数据对象为int*类型,则指向该对象的指针类型为13.假定p是一个指向整数对象的指针,则用_&p_表示指针变量p的地址。14.若p指向x,则_*p_与x的等价的。15.NULL是一个符号常量,通常作为空指针值,它值为_ 0_。三、写出下列每个程序运行后的输出结果1. #i ncludevoid SB(char ch)switch (ch)case A:case a:prin tf(WW);break;case B:case b:prin tf(GG);break;case C:case c:prin tf(PP);break;default:

32、pri ntf(BB);break;5调用系统函数时,要先使用7.假定p所指对象的值为&假定p所指对象的值为9.假定p所指对象的值为 对象的值为_46_。25,p+1所指对象的值为25,p+1所指对象的值为25,p+1所指对象的值为46,则*p+的值为_25_。46,则*+p的值为_46_。46,则执行“*(p+);”语句后,p所指int*_C 语言程序设计形成性考核册共24页-19-void mai n()char a仁b,a2=C,a3=f;SB(a1);SB(a2);SB(a3);SB(A);prin tf(n);输出结果为:GGPPBBWWPress any key to co

33、n ti nue2. #i nclude#in cludedouble SD(i nt a,i nt b,char op)double x;switch(op)case +:x=a+b;break;case -:x=a-b;break;case *:x=a*b;break;case 7:if(b)x=(double)a/b;else exit(1); break;default:(运算符错!n);exit(1); return x;void mai n()int x=20,y=8;prin tf(%3.2lf ”,SD(x,y,-);prin tf(%3.2lf ,SD(x,y,*);prin

34、 tf(%3.2lf ,SD(x,y,/);输出结果为:12.00 160.00 2.50Press any key to con ti nue3. #i ncludevoid WF(i nt x,i nt y)x=x+y;y=x+y;prin tf(subs:x,y=%d,%dn,x,y);void mai n()int x=18,y=23;C 语言程序设计形成性考核册共24页-20-prin tf(mai n:x,y=%d,%dn,x,y); WF(x,y);x=2*x;prin tf(mai n:x,y=%d,%dn,x,y);输出结果为:main:x,y=18,23subs:x,y=4

35、1,64main:x,y=36,23Press any key to con ti nue4.#i nclude#in cludevoid fun( char ss);void mai n()char s15=567891234;fun( s);prin tf(%sn ”,s);void fun( char ss)int i,n=strle n( ss);for(i=0;i n/2;i+)char c=ssi;ssi=ss n _1_i; ss n_1_i=c;输出结果为:432198765Press any key to con ti nue5.#i ncludevoid In sertSo

36、rt(i nt a,i nt n)int i,j,x;for(i=1;i=0;j-)为x顺序向前寻找合适的插入位置if(xaj)aj+1=aj;else break;aj+1=x;void mai n()int i;int a6=20,15,32,47,36,28;C 语言程序设计形成性考核册共24页-21-In sertSort(a,6);for(i=0;i6;i+)pri ntf(%d ,ai);prin tf(n);输出结果为:47 36 32 28 20 15Press any key to con ti nue6. #i ncludevoid mai n()int a8=3,5,7,

37、9,11,13,15,17;int i,*p=a;for(i=0;i8;i+);prin tf(%5d ,*p+);if( (i+1)%4=0 )pri ntf(n);输出结果为:357911131517Press any key to con ti nue7. #i ncludeint LA(i nt *a,i nt n)int i,s=0;for(i=0;i n;i+)s+=ai;return s;void mai n()int a=5,10,15,20,25,30;int b=LA(a,4);int c=LA(a+2,3);prin tf(%d %dn,b,c);输出结果为:50 60P

38、ress any key to con ti nueC 语言程序设计形成性考核册共24页-22-8. #i ncludeint LB(int *a,int n)int i,s=1;for(i=0;i n;i+)s*=*a+;return s;void mai n()int a=1,2,3,4,2,4,5,2;int b=LB(a,4)+LB(&a3,4);prin tf(b=%dn,b);输出结果为:b=184Press any key to con ti nue四、写出下列每个函数的功能1. #in cludeint WB(i nt a,i nt n,i nt x)for(i nt

39、i=0;i n ;i+)if(ai=x)return 1;return 0;函数功能为:根据整型数组元素中是否能找到整数x,返回1或02. #i ncludeint WC(i nt a,i nt n,i nt k)int c=0;for(i nt i=0;i =k)c+;return c;函数功能为: 返回数组中前n个其值大于等于k的元素个数。3. #in clude#in clude#in cludecon st int N=10;in t ff(i nt x,i nt y)C 语言程序设计形成性考核册共24页-23-int乙prin tf(%d + %d = ,x,y);scan f(%d

40、, &z);if(x+y=z)retur n 1;else retur n 0;void mai n()int i,a,b,c=0;sran d(time(0);初始化随机数系列for(i=0;iN;i+)a=rand()%20+1;/rand90函数产生0-32767之间的一个随机数b=ra nd()%20+1;c+=ff(a,b);printf(得分:%dn,c*10);函数功能为:函数ff让两个数相加,要求输入其和,判断结果是否正确。在主函数中用随机函数产生两 个20以内的随机整数,通过10次调用这个函数,算对一次得10分,计算所得分C 语言程序设计形成性考核册共24页-24-4

41、.int fun6(int m,int n,int b=2)if(mb & n b)return m*n;else if(m%b=0 & n %b=O)return b*fu n6(m/b, n/b,b);else retur n fun6(m,n,+b);函数功能为:此函数带有一个默认参数,若使用默认值,则通过递归调用,返回前 不使用默认值时,若最后一个参数不小于前2个参数,则返回前否则,通过递归调用,返回前2参数最小公倍数的n倍数。5.#i nclude#in cludevoid LI(int n)int * a=(i nt *)malloc( n*sizeof( in t

42、);int i;for(i=0;i=0;i-)pri ntf(%d ,*(a+i);prin tf(n);free(a);函数功能为:将从键盘输入的n个整数逆序输出6.#i ncludeint LK(double a,int n)double s=0;i nt i,m=0;for(i=0;i n;i+)s+=ai;s/=n;for(i=0;i=s)m+;return m;函数功能为:求不小于数组元素之平均值的元素个数。C 语言程序设计形成性考核作业四2参数的最小公倍数;2参数之乘积;C 语言程序设计形成性考核册共24页-25-一、选择题1.假定有struct BOOKchar title40;

43、float price;struct BOOK *book;”,则不正确的语句 为(A)。A.struct BOOK *x=malloc(book);B.struct BOOK x=“C+Programming”,27.0;C.struct BOOK *x=malloc(sizeof(BOOK);D.struct BOOK *x=&book;2.假定有struct BOOKchar title40;float price; book;”,则正确的语句为(B)。A.struct BOOK x=&book;B.struct BOOK *x=&book;C.struct BO

44、OK x=calloc(BOOK);D.struct BOOK *x=BOOK;3.表示文件结束的符号常量为(C)。A.eof B.EofC.EOFD.feof4.C语言中系统函数fopen()是(D)一个数据文件的函数。A.读取B.写入C.关闭D.打开5.从一个数据文件中读入以换行符结束的一行字符串的函数为(B)。A.gets() B.fgets() C.getc()D.fgetc()6.向一个二进制文件写入信息的函数fwrite()带有(D)参数。A.1B.2C.3D.4二、填空题1.假定一个结构类型的定义为struct Aint a,b;A*c;”,则该类型的大小为_12_字节。2.假定

45、一个结构类型的定义为“struct Bint a5,char *b;”,则该类型的大小为_24_字节。3.假定一个结构类型的定义为struct Dinta;unionint b;double c;struct D* d2;”,则该类型的大小为_20_字节。4.假定要动态分配一个类型为struct Worker的具有n个元素的数组, 并由r指向这个动态数组,则使用语句的表达式为struct Worker* r=_(Worker*)malloc(n*sizeof(Worker);_。5.假定要访问一个结构x中的由a指针成员所指向的对象,则表示方法为_x.(*a)。6.假定要访问一个结构指针p所指向

46、对象中的b指针成员所指的对象,则表示方法为*(P-b)7.与结构成员访问表达式_(*fp).score等价的表达式是_fp-score。三、写出下列每个程序运行后的输出结果1. #i ncludestruct Workerchar name15; /姓名int age;年龄C 语言程序设计形成性考核册共24页-26-float pay; /工资;void mai n()struct Worker x=wa nghua,52,23.50;struct Worker y,*p;y=x;p=&x;prin tf(%s %d %6.2fn,y. name,y.age,y.pay);printf

47、(%s %d %6.2fn,p-name,p-age,p-pay);输出结果为:wan ghua 5223.50wan ghua 5223.50Press any key to con ti nue2. #i nclude#in cludestruct Workerchar name15; /姓名int age;年龄float pay; /工资;void mai n()struct Worker x;char *t=lout in g;int d=38;float f=493;strcpy(x. name,t);x.age=d;x.pay=f;x.age+;x.pay*=2;prin tf(%

48、s %d %6.2fn,x. name,x.age,x.pay);输出结果为:louting 39 986.00Press any key to con ti nue3. #i nclude#in cludestruct WorkerC 语言程序设计形成性考核册共24页-27-char name15; /姓名int age;年龄float pay; /工资;int Less(struct Worker r1,struct Worker r2)if(r1.ager2.age)retur n 1;else return 0;void mai n()struct Worker a4=abc,25,4

49、20,def,58,638,ghi,49,560,jkl,36,375;struct Worker x=a0;int i;for(i=1;i4;i+)if(Less(x,ai)x=ai;printf(%s %d %6.2fn,,x.age,x.pay);输出结果为:def 58 638.00Press any key to con ti nue四、写出下列每个函数的功能1. void QA(struct Worker a,i nt n)int i;for(i=0;i n;i+)scan f(%s %d %f,&ai. name,ai.age,ai.pay);假定结构struct Worke

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论