聊城大学《C语言程序设计》期末复习题及参考答案.docx
C语言程序设计练习题及参考答案一、将一个数组中的值按逆序重新存放,例如,原来的顺序为8,6,5,4,I,要求改为1,4,5,6,8。二、输入10个数,按照由大到小的顺序输出出来。三、编写程序打印九九乘法表。四、假设圆半径r=l.5,编程求圆的周长、面积和圆球表面积和圆球体积。五、数组22,编程将数组a转置,存入数组b中。六、求100到200之间的全部素数。参考答案#include',stdio.h"voidmain()(inti,t,al0;for(i=0;i<10;i+)scanf("%d',ai);Printf("原数组为:n");fdr(i=0;i<=9;i+)printf("%5d",ai);printf(',n");for(i=0;i<5;i+)(t=ai;ai=a9-i;a9-i=t;IPrintf("倒序后的数组为for(i=0;i<=9;i+)printf('r%5d",ai);答:#include<stdio.h>intmain()inta10;inti,j,t;printf(',input10numbers:n");for(i=0;i<10;i+)进行9次循环,实现9趟比较在每一趟中进行9-j次比较相邻两个数比较scanf(',%d"aiJ);printf(,n);for(j=0<9+)for(i=0;i<9-j;i+)if(ai>ai+l)t=ai;ai=ai+1;ai+1=t;)printf("thesortednumbers:nM);fbr(i=O;i<IO;i+)printf(,%d",ai);printf(,n);return0;答:#include"stdio.h"voidmain()(inti,j;for(i=l;i<=9;i+)(for(j=l<=i+)printf("%4d",i*j);printf("n);)四、答:include"stdio.hvoidmain()(doubler=l.5,pi=3.1415926,c,s,qc,qs;c=2*pi*r;s=pi*r*r;qc=4*pi*r*r;qs=4.0/3.0*pi*r*r*r;Printf(半径二%f,圆的面积二%f,面积二%f,球的表面积二%f,体积=%f,r,c,s,qc,qs);)五、#include<stdio.h>intmain()inta23=l3,46);intb32,i,j;printf("arraya:n*');for(i=0;i<=l;i+)for(j=0<=2+)(printf("%5d",aij);bi=aiU;)printf(',n");)printf("arrayb:n");for(i=0;i<=2;i+)(for(j=0;j<=l;j+)printf("%5d",biU);printf("n,);)return0;)六、答:#include<stdio.h>#include<math.h>intmain()/n从100变化到200,对每个奇数n进行判定如果n被i整除,终止内循环,此时i<k+l若i>=k+1,表示n未曾被整除应确定n是素数0!用来控制换行,一行内输出10个素数m累计到10的倍数,换行intn,k,i,m=0;for(n=IOl;n<=200;n=n+2)k=sqrt(n);fbr(i=2;i<=k;i+)if(n%i=0)break;if(i>=k+l)printf(,%d",n);m=m+l;)if(m%IO=O)printf("n,);1printf("n);