收藏 分享(赏)

大学C语言期末考试题库试题及答案.doc

上传人:精品资料 文档编号:8855618 上传时间:2019-07-14 格式:DOC 页数:47 大小:249KB
下载 相关 举报
大学C语言期末考试题库试题及答案.doc_第1页
第1页 / 共47页
大学C语言期末考试题库试题及答案.doc_第2页
第2页 / 共47页
大学C语言期末考试题库试题及答案.doc_第3页
第3页 / 共47页
大学C语言期末考试题库试题及答案.doc_第4页
第4页 / 共47页
大学C语言期末考试题库试题及答案.doc_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、1【程序填空】-题目:下面函数为二分法查找 key 值。数组中元素已递增排序,若找到 key 则返回对应的下标,否则返回-1。-*/#includefun(int a,int n,int key)int low,high,mid;low=0;high=n-1;/*SPACE*/while(【lowamid) 【low=mid+1】;/*SPACE*/else 【return(mid)】;return -1;void main()int a10=1,2,3,4,5,6,7,8,9,10;int b,c;b=4;c=fun(a,10,b);if(c=-1)printf(“not found“);e

2、lse printf(“position %dn“,c);/*-2 【程序填空】-题目:求 n!,n 值由键盘输入。-*/#include void main()int n,i;float t;printf(“please input n(n=0):“);/*SPACE*/scanf(“%d“,【i=1;t=1.0;/*SPACE*/while(【i #include “math.h“void main( ) int m,i,k;scanf(“%d“,k=sqrt(m);/*SPACE*/for(i=2;【ik】) printf(“Yesn“);elseprintf(“Non“);/*-5 【

3、程序填空】-题目:以下程序的功能:计算并输出 500 以内最大的 10 个能被13 或 17 整除的自然数之和。-*/#include /*SPACE*/int fun(【int k】 )int m=0, mc=0;/*SPACE*/while (k = 2 printf(“Enter %d Numbers:n“, N); for(i=0;ivoid main()/*SPACE*/int 【fib】15,i;fib0=1;fib1=1;for (i=2;iint fun(int n) int i,j,k,m;m=n;/*SPACE*/【k=0】for(i=1;i void main() flo

4、at mark,max,min,aver=0.0,sum=0.0;int i;for(i=1;imax 】) max=mark;/*SPACE*/【sum+=mark 】;aver=(sum-max-min)/8;printf(“The Average score is %fn“,aver);/*-10 【程序填空】-题目:输出 9*9 口诀。-*/#include void main()int i,j,result;printf(“n“);/*SPACE*/for (i=1;【i void main() int n,m,nm,r,t;printf(“Enter m,n=?“);scanf(“

5、%d%d“,nm=n*m;if (mvoid main ()static int aN=12,9,16,5,7,2,1,k,s;printf(“n the origanal array:n“);for (k=0;k void main( ) int a,b,c, max;printf(“input three numbers: “);scanf(“%d%d%d“,/*SPACE*/if(【ab】 ) max=a; /*SPACE*/【else 】max=b; if(maxvoid main()int x,y,z,t;scanf(“%d%d%d“,if (xy)/*SPACE*/【t=x;x=y

6、;y=t; 】if(xz)/*SPACE*/【t=z;z=x;x=t; 】if(yz)/*SPACE*/【t=y;y=z;z=t; 】printf(“small to big: %d %d %dn“,x,y,z);/*-15 【程序填空】-题目:打印出如下图案(菱形)*-*/#includevoid main()int i,j,k;/*SPACE*/for(i=0;【i#include int fun( int high ) int sum = 0, n=0, j, yes;/*SPACE*/while (high = 2) while(scanf(“%d“,for(i=0;i#define

7、N 20 void fun(int a, int n) int i, j, t, p;for (j = 0 ;j #includeint fun(int m)/*FOUND*/ int i,k;for(i=m+1;i+)for(k=2;klong fun (long num)/*FOUND*/long k=1;do k*=num%10 ;/*FOUND*/num/=10;/*FOUND*/ while(num) ;return (k) ;void main( ) long n ;printf(“Please enter a number:“) ; scanf(“%ld“,printf(“n%l

8、dn“,fun(n) ;/*- 24 【程序改错】-题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#include“stdio.h“void main()int day,x1,x2;day=9;/*FOUND*/x2=1;while(day0)/*FOUND*/x1=(x2+1)*2;x2=x1;/*FOUND*/day-;printf(“

9、the total is %dn“,x1);/*- 25【程序改错】-题目:一个 5 位数,判断它是不是回文数。即 12321 是回文数,个位与万位相同,十位与千位相同。-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#include“stdio.h“void main( )/*FOUND*/long ge,shi,qian,wan,x;scanf(“%ld“,/*FOUND*/wan=x/10000;qian=x%10000/1000;shi=x%100/10;ge=x%10;/*FOUND*/if(ge=wanelseprintf(“this number is not a

10、huiwenn“);/*- 26 【程序改错】-题目:编写函数 fun 求 20 以内所有 5 的倍数之积。-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#define N 20#include “stdio.h“void main() int sum;sum=fun(5);printf(“%d 以内所有 %d 的倍数之积为: %dn“,N,5,sum);int fun(int m)/*FOUND*/int s=1,i;for(i=1;iarray i) Min=array i;/*FOUND*/sum=sum+arrayi; /*FOUND*/ave=sum/n;for(i=

11、0;i float average(float array10)int i;float aver,sum=array0;/*FOUND*/for(i=1;ivoid main()int fact(int j);printf(“5!=%dn“,fact(5);int fact(int j)int sum;/*FOUND*/if(j=0)/*FOUND*/sum=1;elsesum=j*fact(j-1);/*FOUND*/return sum;/*- 30 【程序改错】-题目:编写函数求 2!+4!+6!+8!+10+12!+14!。-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/

12、#include “stdio.h“long sum(int n)/*FOUND*/int i,j;long t,s=0;/*FOUND*/for(i=2;i /*FOUND*/void fun( int m)int i,k=1;if(m/*FOUND*/void sort(int x,int n)int i,j,k,t;for(i=0;ixj+1) t=xj;xj=xj+1;xj+1=t;void main()int i,n,a100;printf(“please input the length of the array:n“);scanf(“%d“,for(i=0;i int fun(i

13、nt a,int b)int r,t;if(aint Row,Col;void main()int aNM,i,j,min,row,col;printf(“input a array:“);for(i=0;iarray ij)min=array ij;Row=i;/*FOUND*/Col=j;return(min);/*-36 【程序改错】-题目:求 n!,n 值由键盘输入。程序中共有 4 条错误语句,请改正错误。-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#include void main()int n,i;/*FOUND*/float t;printf(“please

14、input n(n=0):“);/*FOUND*/scanf(“%d“,i=1;/*FOUND*/t=1;while(i=n)/*FOUND*/ t*=i;i+;printf(“%d!=%f“,n,t);/*-37 【程序设计】-题目:编写函数 fun,函数的功能是:求 1 到m 之间(包括 m)的偶数之积。-注意:部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。-*/#include “stdio.h“double fun(int m)/*Program*/double y=1int i;for(i=1;i=m;i+)if

15、(i%2=0)y*=i;return y;/* End */void main()printf(“ji=%lfn“,fun(20);yzj();yzj()FILE *IN,*OUT;int iIN,i;double dOUT;IN=fopen(“in.dat“,“r“);if(IN=NULL)printf(“Please Verify The Currernt DirIt May Be Changed“);OUT=fopen(“out.dat“,“w“);if(OUT=NULL)printf(“Please Verify The Current Dir It May Be Changed“);

16、for(i=0;i5;i+)fscanf(IN,“%d“,dOUT=fun(iIN);fprintf(OUT,“%fn“,dOUT);fclose(IN);fclose(OUT);/*-38【程序设计】-题目:编写函数 fun 其功能是 : 找出一个大于给定整数且紧随这个整数的素数,并作为函数值返回。-注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。-*/#include “stdio.h“int fun(int n)/*Program*/int i,k;for(i=n+1;i+)for(k=2;ki;k+)if(i%

17、k=0)break;if(k=i)return(i);/* End */void main() int m;printf(“Enter m: “);scanf(“%d“, printf(“nThe result is %dn“, fun(m);yzj(); yzj()FILE *IN,*OUT;int s ;int t;int o;IN=fopen(“in.dat“,“r“);if(IN=NULL)printf(“Read File Error“);OUT=fopen(“out.dat“,“w“);if(OUT=NULL)printf(“Write File Error“); for(s=1;s=5;s+) fscanf(IN,“%d“,o=fun(t);fprintf(OUT,“%dn“,o);fclose(IN);fclose(OUT);/*-39 【程序设计】-

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报