全真c语言程序填空题考试题库!!!.doc

上传人:豆**** 文档编号:33545143 上传时间:2022-08-11 格式:DOC 页数:27 大小:218.50KB
返回 下载 相关 举报
全真c语言程序填空题考试题库!!!.doc_第1页
第1页 / 共27页
全真c语言程序填空题考试题库!!!.doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《全真c语言程序填空题考试题库!!!.doc》由会员分享,可在线阅读,更多相关《全真c语言程序填空题考试题库!!!.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、如有侵权,请联系网站删除,仅供学习与交流全真c语言程序填空题考试题库!【精品文档】第 27 页c语言程序填空!这就是考试题库!共计131道试题一、程序填空 (共131题)Turbo C(共131试题)3)/*-【程序填空】功能:已定义一个含有30个元素的数组s,函数fun1的功能是按顺序分别赋予各元素从2开始的偶数,函数fun2则按顺序每五个元素求一个平均值, 并将该值存放在数组w中。float s30,w6;fun1(float s)int k,i;for(k=2,i=0;i30;i+)/*SPACE*/_ ;k+=2;fun2(float s,float w)float sum=0.0;i

2、nt k,i;for(k=0,i=0;i30;i+)sum+=si;/*SPACE*/_;wk=sum/5;/*SPACE*/_ ;k+;main()int i;fun1(s);/*SPACE*/_;for(i=0;i30;i+)if(i%5=0) printf(n);printf(%8.2f,si);printf(n);for(i=0;i6;i+)printf(%8.2f,wi);答案:【1】 si=k 或 si=(i+1)*2【2】 if( ( i + 1 )%5 = 0 ) 或 if( ( i + 1 )/5*5 =i+1)【3】 sum=0 或 sum=0.0【4】 fun2(s,w)

3、4)/*-【程序填空】功能:下面的程序是求1!+3!+5!+n!的和。main()long int f,s;int i,j,n;/*SPACE*/_;scanf(%d,&n);/*SPACE*/for(i=1;i=n; _)f=1;/*SPACE*/for(j=1; _;j+)/*SPACE*/_;s=s+f;printf(n=%d,s=%ldn,n,s);答案:【1】 s=0【2】 i+=2 或 i=i+2 或 i+,i+【3】 j=j 或 jj【4】 f= f * j5)/*-【程序填空】功能:将一个字符串中下标为m的字符开始的全部字符复制成为另一个字符串。#includevoid str

4、copy(char *str1,char *str2,int m)char *p1,*p2;/*SPACE*/_;p2=str2;while(*p1)/*SPACE*/_;/*SPACE*/_;main()int i,m;char str180,str280;gets(str1);scanf(%d,&m);/*SPACE*/_;puts(str1);puts(str2);答案:【1】 p1= str1 + m【2】 *p2+=*p1+ 或 *(p2+)=*(p1+) 或 *p2=*p1,p2+,p1+ 或 *p2=*p1+,p2+ 或 *p2+=*p1,p1+【3】 *p2=0 或 *p2=0

5、 或 *p2=NULL【4】 strcopy(str1,str2,m)6)/*-【程序填空】功能:以下程序是用选择法对10个整数按升序排序。/*SPACE*/_main()int i,j,k,t,aN;for(i=0;i=N-1;i+)scanf(%d,&ai);for(i=0;iN-1;i+)/*SPACE*/_;/*SPACE*/for(j=i+1; _;j+)if(ajak) k=j;/*SPACE*/if(_)t=ai;ai=ak;ak=t;printf(output the sorted array:n);for(i=0;i=N-1;i+)printf(%5d,ai);printf(

6、n);答案:【1】 #define N 10【2】 k=i【3】 jj 或 j=j【4】 k != i7)/*-【程序填空】功能:从键盘上输入一个字符串, 将该字符串升序排列后输出到文件test.txt中,然后从该文件读出字符串并显示出来。#include#include#includemain()FILE *fp;char t,str100,str1100; int n,i,j;if(fp=fopen(test.txt,w)=NULL)printf(cant open this file.n);exit(0);printf(input a string:n); gets(str);/*SPA

7、CE*/_;/*SPACE*/for(i=0; _ ;i+)for(j=0;jn-i-1;j+)/*SPACE*/if(_)t=strj;strj=strj+1;strj+1=t;/*SPACE*/_;fclose(fp);fp=fopen(test.txt,r);fgets(str1,100,fp);printf(%sn,str1);fclose(fp);答案:【1】 n=strlen(str) 或 for(n=0;strn!=0;n+) 或 for(n=0;strn;n+) 或 for(n=0;strn!=0;n+)【2】 ii 或 i-1+n 或 ii 或 -1+ni 或 i=i 或 -

8、1+n=i【3】 strjstr j + 1 或 str j + 1 strj 或 strj+1strj 或 strj+1=strj【4】 fputs(str,fp) 或 fprintf(fp,%sn,str) 或 fprintf(fp,%s,str)8)/*-【程序填空】功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出其和。#include #include main()int i,n,sum;sum=0;/*SPACE*/_;/*SPACE*/for(i=1; _ ;i+)/*SPACE*/if(_)if(i%2=0)sum=sum+i;n+;printf(%6d,i);/

9、*SPACE*/if(_)printf(n);printf(ntotal=%d,sum);答案:【1】 n=0【2】 i=300 或 i=i 或 300i【3】 i%7 = 0 | i%17 = 0 或 !(i%7)|!(i%17) 或 !(i%17)|!(i%7) 或 !(i%7&i%17)【4】 n%5 = 0 或 !(n%5) 或 n/5*5=n9)/*-【程序填空】功能:以下程序的功能如(图1)。#include main()int f;/*SPACE*/_;float t,pi;t=1;pi=t;f=1;n=1.0;/*SPACE*/while(_ )n=n+2;/*SPACE*/_

10、;t=f/n;pi=pi+t;/*SPACE*/_;printf(pi=%10.6fn,pi);答案:【1】 float n 或 duoble n【2】 fabs(t)=1e-6 或 fabs(t)=0.000001 或 1e-6=fabs(t) 或 0.000001=fabs(t)【3】 f=-f 或 f=-1*f 或 f=f*(-1) 或 f=f*-1 或 f=(-1)*f【4】 pi= pi * 4 或 pi*=4(图1)11)/*-【程序填空】功能:求100999之间的水仙花数说明:水仙花数是指一个三位数的各位数字的立方和是这个数本身。例如:153135333)。int fun(int

11、 n) int i,j,k,m;m=n;/*SPACE*/_;for(i=1;i4;i+)/*SPACE*/_;m=(m-j)/10;k=k+j*j*j;if(k=n)/*SPACE*/_;elsereturn(0);main()int i;for(i=100;i1000;i+)/*SPACE*/if(_=1)printf(%d is ok!n ,i);答案:【1】 k=0【2】 j=m%10 或 j=m-m/10*10 或 j=m-10*(m/10)【3】 return(1)【4】 fun(i)(图1)12)/*-【程序填空】功能:产生并输出如下形式的方阵。1 2 2 2 2 2 13 1

12、2 2 2 1 43 3 1 2 1 4 43 3 3 1 4 4 43 3 1 5 1 4 43 1 5 5 5 1 41 5 5 5 5 5 1main()int a77;int i,j;for (i=0;i7;i+)for (j=0;j7;j+)/*SPACE*/if (_) aij=1;/*SPACE*/else if (ij&i+jj&i+j6) aij=3;/*SPACE*/else if (_) aij=4;else aij=5;for (i=0;i7;i+)for (j=0;j7;j+)printf(%4d,aij);/*SPACE*/_;答案:【1】 i = j | i +

13、j = 6【2】 aij=2【3】 i6 或 ji & i + j6 或 ij & i + 6i & i + 6j【4】 printf(n)13)/*-【程序填空】功能:产生并输出杨辉三角的前七行。11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 1main ( )int a77;int i,j,k;for (i=0;i7;i+)ai0=1;/*SPACE*/_;for (i=2;i7;i+)/*SPACE*/for (j=1;j_;j+)/*SPACE*/aij= _;for (i=0;i7;i+)/*SPACE*/for (j=0;

14、_;j+)printf(%6d,aij);printf(n);答案:【1】 aii=1【2】 i【3】 ai-1j+ai-1j-1 或 ai-1j-1+ai-1j【4】 j=j 或 jj 或 j-1j-114)/*-【程序填空】功能:输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行。main()int m,n,k,i=0;for(m=100;m0) 或 while(0n) 或 while(n!=0) 或 while(0!=n)【4】 printf(n)15)/*-【程序填空】功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作为终止标记。main()int x

15、,i=0,j=0;float s1=0,s2=0,av1,av2;scanf(%d,&x);/*SPACE*/while(_)if(x%2=0) s1=s1+x;i+;/*SPACE*/_s2=s2+x;j+;/*SPACE*/_;if(i!=0)av1=s1/i;elseav1=0;if(j!=0)/*SPACE*/_ ;elseav2=0;printf(oushujunzhi:%7.2f,jishujunzhi:%7.2fn,av1,av2);答案:【1】 x != 0 或 x【2】 else 或 else if(x%2=1) 或 else if(x%2!=0) 或 if(x%2)【3】

16、scanf(%d,&x)【4】 av2=s2/j16)/*-【程序填空】功能:产生10个30,90区间上的随机整数,然后对其用选择法进行由小到大的排序。#include stdlib.hmain()/*SPACE*/_;int i,j,k;int a10;for(i=0;i10;i+)ai=random(61)+30;for(i=0;i9;i+)/*SPACE*/_;for(j=i+1;jaj 或 ajak【4】 i=0;ii;i+ 或 i=0;i=i;i+ 或 i=0;ii;i+=1 或 i=0;i=i;i+=1 或 i=0;ii;+i 或 i=0;9=i;+i 或 i=0;i=9;+i17

17、)/*-【程序填空】功能:删除字符串中的指定字符,字符串和要删除的字符均由键盘输入。#include stdio.hmain()char str80,ch;int i,k=0;/*SPACE*/gets(_);ch=getchar();/*SPACE*/for(i=0;_;i+)if(stri!=ch)/*SPACE*/_;k+;/*SPACE*/_;puts(str);答案:【1】 str【2】 stri!=0 或 stri!=NULL 或 stri!=0 或 stri【3】 strk=stri 或 *(str+k)=*(str+i) 或 strk=*(str+i) 或 *(str+k)=s

18、tri【4】 strk=0 或 *(str+k)=0 或 strk=NULL 或 strk=0 或 *(str+k)=0 或 *(str+k)=NULL18)/*-【程序填空】功能:将一个数组中的元素按逆序存放。#define N 7main ()static int aN=12,9,16,5,7,2,1,k,s;printf(n the origanal array:n);for (k=0;kN;k+)printf(%4d,ak);/*SPACE*/for (k=0;kN/2; _ )s=ak;/*SPACE*/_ ;/*SPACE*/_ ;printf(n the changed arra

19、y:n);for (k=0;kN;k+)/*SPACE*/_ (%4d,ak);答案:【1】 k+ 或 k= k + 1 或 k+=1 或 +k【2】 ak=aN-k-1 或 ak=aN-1-k 或 ak=a6-k 或 *(a+k)=*(a+N-k-1) 或 *(a+k)=*(a+N-1-k 或 ak=a-1+N-k 或 ak=a-1-k+N 或 ak=a-k-1+N 或 ak=a-k+N-1 或 *(a+k)=*(a+N-k-1) 或 a6-k=s【3】 aN-k-1=s 或 aN-1-k=s 或 a6-k=s 或 aN -k -1=s 或 *(a +N -k -1)=s【4】 printf

20、19)/*-【程序填空】功能:是将两个字符串连接为一个字符串,不许使用库函数strcat。#include stdio.h#include string.hmain ( )char str180,str240;int i,j,k;gets(str1);gets(str2);puts(str1);puts(str2);/*SPACE*/_;puts(str1);JOIN(s1,s2)char s180,s240;int i,j;/*SPACE*/_;/*SPACE*/for (i=0; _0;i+)s1i+j=s2i;/*SPACE*/s1i+j= _ ;答案:【1】 JOIN(str1,str

21、2)【2】 j=strlen(s1) 或 for(j=0;s1j!=10;j+); 或 for(j=0;s1j;j+);【3】 s2i!= 或 *(s2 + i)!=【4】 0 或 NULL 或 020)/*-【程序填空】功能:求两个非负整数的最大公约数和最小公倍数。main()int m,n,r,p,gcd,lcm;scanf(%d%d,&m,&n);if(mn) p=m,m=n;n=p;p=m*n;r=m%n;/*SPACE*/while(_ )/*SPACE*/m=n;n=r; _;/*SPACE*/gcd=_;lcm=p/gcd;/*SPACE*/printf(gcd=%d,lcm=%

22、dn, _);答案:【1】 r != 0 或 r【2】 r=m%n 或 r=m-m/n*n【3】 n【4】 gcd,lcm 或 n,lcm21)/*-【程序填空】功能:将一个字符串中的前N个字符复制到一个字符数组中去,不许使用strcpy函数。main ( )char str180,str280;int i,n;/*SPACE*/gets(_);scanf(%d,&n);/*SPACE*/for (i=0; _ ;i+)/*SPACE*/_;/*SPACE*/_;printf(%sn,str2);答案:【1】 str1【2】 ii 或 i=i【3】 str2i=str1i 或 *(str2+i

23、)=*(str1+i) 或 *(str2+i)=str1i 或 str2i=*(str1+i)【4】 str2n=0 或 str2i=0 或 str2n=0 或 str2i=0 或 *(str2+n)=0 或 *(str2+i)=0 或 *(str+n)=0 或 *(str2+i)=022)/*-【程序填空】功能:打印以下图形。main ( )char a59= ;int i,j;for (i=0;i5;i+)/*SPACE*/for(j=i; _;j+)aij=*;/*SPACE*/for(_;i5;i+)for(j=0;j9;j+)/*SPACE*/printf(%c, _ );/*SPA

24、CE*/_;答案:【1】 jj 或 jj【2】 i=0【3】 aij【4】 printf(n)23)/*-【程序填空】功能:求一个二维数组中每行的最大值和每行的和。#include stdlib.hmain()int a55,b5,c5,i,j,k,s=0;for(i=0;i5;i+)for(j=0;j5;j+)aij=random(40)+20;for(i=0;i5;i+)/*SPACE*/k=ai0; _ ;for(j=0;j5;j+)/*SPACE*/if(kaij) _ ;s=s+aij;bi=k;/*SPACE*/_ ;for(i=0;i5;i+)for(j=0;j5;j+)/*SP

25、ACE*/printf(%5d, _ );printf(%5d%5d,bi,ci);printf(n);答案:【1】 s=0【2】 k=aij【3】 ci=s【4】 aij24)/*-【程序填空】功能:对任一整数N(N0),它都可以分解成1(或-1)和一些质数(素数)因子的形式。例如:当N=150时,可分解成12355;当N=-150时,可分解为-12355。下边程序能实现这种分解过程。当N=150,输出以下分解结果:N= 1* 2* 3* 5* 5main()int n,i,j,r;scanf(%d,&n);if (n=0)printf (data error n);exit(0);/*SP

26、ACE*/else if (_)printf(n=1);elseprintf(n=-1);n=-n;/*SPACE*/for(_;i0 或 0n【2】 i=2【3】 r=n%i【4】 n=n/i 或 n/=i25)/*-【程序填空】功能:以下程序的功能如(图1)。/*SPACE*/_main()float x,f;scanf(%f,&x);/*SPACE*/if(x0) _;/*SPACE*/else if(_)f=2*x+1;elsef=sin(x)+5;/*SPACE*/printf(x=%f,y=%fn, _);答案:【1】 #include math.h 或 #include 【2】 f=fabs( x + 1 )【3】 x=x 或 xx 或 x=0&x=5 或 0=x&x=0&5=x 或 0=x 或 !(x5)【4】 x,f(图1)26)/*-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁