全真c语言程序填空题考试题库_第1页
全真c语言程序填空题考试题库_第2页
全真c语言程序填空题考试题库_第3页
全真c语言程序填空题考试题库_第4页
全真c语言程序填空题考试题库_第5页
已阅读5页,还剩144页未读 继续免费阅读

下载本文档

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

文档简介

c语言程序填空!!!这就是考试题库!!!共计131道试题一、程序填空(共131题)TurboC(共131试题)3)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:已定义一个含有30个元素的数组s,函数fun1的功能是按顺序分别赋予各元素从2开始的偶数,函数fun2则按顺序每五个元素求一个平均值,并将该值存放在数组w中。-------------------------------------------------------*/floats[30],w[6];fun1(floats[]){intk,i;for(k=2,i=0;i<30;i++){/***********SPACE***********/________________;k+=2;}}fun2(floats[],floatw[]){floatsum=0.0;intk,i;for(k=0,i=0;i<30;i++){sum+=s[i];/***********SPACE***********/________________;{w[k]=sum/5;/***********SPACE***********/________________;k++;}}}main(){inti;fun1(s);/***********SPACE***********/________________;for(i=0;i<30;i++){if(i%5==0)printf("\n");printf("%8.2f",s[i]);}printf("\n");for(i=0;i<6;i++)printf("%8.2f",w[i]);}答案:【1】s[i]=k或s[i]=(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)4)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:下面的程序是求1!+3!+5!+……+n!的和。-------------------------------------------------------*/main(){longintf,s;inti,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=%ld\n",n,s);}答案:【1】s=0【2】i+=2或i=i+2或i++,i++【3】j<=i或i>=j或j<i+1或i+1>j【4】f=f*j5)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:将一个字符串中下标为m的字符开始的全部字符复制成为另一个字符串。-------------------------------------------------------*/#include<stdio.h>voidstrcopy(char*str1,char*str2,intm){char*p1,*p2;/***********SPACE***********/________________;p2=str2;while(*p1)/***********SPACE***********/________________;/***********SPACE***********/________________;}main(){inti,m;charstr1[80],str2[80];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或*p2=NULL【4】strcopy(str1,str2,m)6)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:以下程序是用选择法对10个整数按升序排序。-------------------------------------------------------*//***********SPACE***********/________________main(){inti,j,k,t,a[N];for(i=0;i<=N-1;i++)scanf("%d",&a[i]);for(i=0;i<N-1;i++){/***********SPACE***********/________________;/***********SPACE***********/for(j=i+1;________________;j++)if(a[j]<a[k])k=j;/***********SPACE***********/if(________________){t=a[i];a[i]=a[k];a[k]=t;}}printf("outputthesortedarray:\n");for(i=0;i<=N-1;i++)printf("%5d",a[i]);printf("\n");}答案:【1】#defineN10【2】k=i【3】j<N或N>j或j<=N-1或N-1>=j【4】k!=i7)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:从键盘上输入一个字符串,将该字符串升序排列后输出到文件test.txt中,然后从该文件读出字符串并显示出来。-------------------------------------------------------*/#include<stdio.h>#include<string.h>#include<stdlib.h>main(){FILE*fp;chart,str[100],str1[100];intn,i,j;if((fp=fopen("test.txt","w"))==NULL){printf("can'topenthisfile.\n");exit(0);}printf("inputastring:\n");gets(str);/***********SPACE***********/________________;/***********SPACE***********/for(i=0;________________;i++)for(j=0;j<n-i-1;j++)/***********SPACE***********/if(________________){t=str[j];str[j]=str[j+1];str[j+1]=t;}/***********SPACE***********/________________;fclose(fp);fp=fopen("test.txt","r");fgets(str1,100,fp);printf("%s\n",str1);fclose(fp);}答案:【1】n=strlen(str)或for(n=0;str[n]!='\0';n++)或for(n=0;str[n];n++)或for(n=0;str[n]!=0;n++)【2】i<n或n>i或i<-1+n或i<n-1或n-1>i或-1+n>i或i<=n-1或n-1>=i或-1+n>=i【3】str[j]>str[j+1]或str[j+1]<str[j]或str[j+1]<str[j]或str[j+1]<=str[j]【4】fputs(str,fp)或fprintf(fp,"%s\n",str)或fprintf(fp,"%s",str)8)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:以每行5个数来输出300以能被7或17整除的偶数,并求出其和。-------------------------------------------------------*/#include<stdio.h>#include<conio.h>main(){inti,n,sum;sum=0;/***********SPACE***********/________________;/***********SPACE***********/for(i=1;________________;i++)/***********SPACE***********/if(________________)if(i%2==0){sum=sum+i;n++;printf("%6d",i);/***********SPACE***********/if(________________)printf("\n");}printf("\ntotal=%d",sum);}答案:【1】n=0【2】i<=300或i<300或300>=i或300>i【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<math.h>main(){intf;/***********SPACE***********/________________;floatt,pi;t=1;pi=t;f=1;n=1.0;/***********SPACE***********/while(________________){n=n+2;/***********SPACE***********/________________;t=f/n;pi=pi+t;}/***********SPACE***********/________________;printf("pi=%10.6f\n",pi);}答案:【1】floatn或duoblen【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)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:求100-999之间的水仙花数说明:水仙花数是指一个三位数的各位数字的立方和是这个数本身。例如:153=1^3+5^3+3^3)。-------------------------------------------------------*/intfun(intn){inti,j,k,m;m=n;/***********SPACE***********/________________;for(i=1;i<4;i++){/***********SPACE***********/________________;m=(m-j)/10;k=k+j*j*j;}if(k==n)/***********SPACE***********/________________;elsereturn(0);}main(){inti;for(i=100;i<1000;i++)/***********SPACE***********/if(________________==1)printf("%disok!\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)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:产生并输出如下形式的方阵。1222221312221433121443331444331514431555141555551-------------------------------------------------------*/main(){inta[7][7];inti,j;for(i=0;i<7;i++)for(j=0;j<7;j++){/***********SPACE***********/if(________________)a[i][j]=1;/***********SPACE***********/elseif(i<j&&i+j<6)________________;elseif(i>j&&i+j<6)a[i][j]=3;/***********SPACE***********/elseif(________________)a[i][j]=4;elsea[i][j]=5;}for(i=0;i<7;i++){for(j=0;j<7;j++)printf("%4d",a[i][j]);/***********SPACE***********/________________;}}答案:【1】i==j||i+j==6【2】a[i][j]=2【3】i<j&&i+j>6或j>i&&i+j>6或i<j&&i+6<j或j>i&&i+6<j【4】printf("\n")13)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:产生并输出辉三角的前七行。111121133114641151010511615201561-------------------------------------------------------*/main(){inta[7][7];inti,j,k;for(i=0;i<7;i++){a[i][0]=1;/***********SPACE***********/________________;}for(i=2;i<7;i++)/***********SPACE***********/for(j=1;j<________________;j++)/***********SPACE***********/a[i][j]=________________;for(i=0;i<7;i++){/***********SPACE***********/for(j=0;________________;j++)printf("%6d",a[i][j]);printf("\n");}}答案:【1】a[i][i]=1【2】i【3】a[i-1][j]+a[i-1][j-1]或a[i-1][j-1]+a[i-1][j]【4】j<=i或i>=j或j<i+1或i+1>j或j-1<i或i>j-114)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行。-------------------------------------------------------*/main(){intm,n,k,i=0;for(m=100;m<=1000;m++){/***********SPACE***********/________________;n=m;do{/***********SPACE***********/k=k+________________;n=n/10;}/***********SPACE***********/________________;if(k%15==0){printf("%5d",m);i++;/***********SPACE***********/if(i%10==0)________________;}}}答案:【1】k=0【2】n%10或n-n/10*10或n-10*(n/10)【3】while(n>0)或while(0<n)或while(n!=0)或while(0!=n)【4】printf("\n")15)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作为终止标记。-------------------------------------------------------*/main(){intx,i=0,j=0;floats1=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.2f\n",av1,av2);}答案:【1】x!=0或x【2】else或elseif(x%2==1)或elseif(x%2!=0)或if(x%2)【3】scanf("%d",&x)【4】av2=s2/j16)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:产生10个[30,90]区间上的随机整数,然后对其用选择法进行由小到大的排序。-------------------------------------------------------*/#include"stdlib.h"main(){/***********SPACE***********/________________;inti,j,k;inta[10];for(i=0;i<10;i++)a[i]=random(61)+30;for(i=0;i<9;i++){/***********SPACE***********/________________;for(j=i+1;j<10;j++)/***********SPACE***********/if(________________)k=j;if(k!=i){t=a[k];a[k]=a[i];a[i]=t;}}/***********SPACE***********/for(________________)printf("%5d",a[i]);printf("\n");}答案:【1】intt【2】k=i【3】a[k]>a[j]或a[j]<a[k]【4】i=0;i<10;i++或i=0;10>i;i++或i=0;i<=9;i+=1或i=0;9>=i;i++或i=0;i<10;i+=1或i=0;10>i;i+=1或i=0;i<=9;i++或i=0;9>=i;i+=1或i=0;i<10;++i或i=0;10>i;++i或i=0;9>=i;++i或i=0;i<=9;++i17)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:删除字符串中的指定字符,字符串和要删除的字符均由键盘输入。-------------------------------------------------------*/#include"stdio.h"main(){charstr[80],ch;inti,k=0;/***********SPACE***********/gets(________________);ch=getchar();/***********SPACE***********/for(i=0;________________;i++)if(str[i]!=ch){/***********SPACE***********/________________;k++;}/***********SPACE***********/________________;puts(str);}答案:【1】str【2】str[i]!='\0'或str[i]!=NULL或str[i]!=0或str[i]【3】str[k]=str[i]或*(str+k)=*(str+i)或str[k]=*(str+i)或*(str+k)=str[i]【4】str[k]='\0'或*(str+k)='\0'或str[k]=NULL或str[k]=0或*(str+k)=0或*(str+k)=NULL18)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:将一个数组中的元素按逆序存放。-------------------------------------------------------*/#defineN7main(){staticinta[N]={12,9,16,5,7,2,1},k,s;printf("\ntheoriganalarray:\n");for(k=0;k<N;k++)printf("%4d",a[k]);/***********SPACE***********/for(k=0;k<N/2;________________){s=a[k];/***********SPACE***********/________________;/***********SPACE***********/________________;}printf("\nthechangedarray:\n");for(k=0;k<N;k++)/***********SPACE***********/________________("%4d",a[k]);}答案:【1】k++或k=k+1或k+=1或++k【2】a[k]=a[N-k-1]或a[k]=a[N-1-k]或a[k]=a[6-k]或*(a+k)=*(a+N-k-1)或*(a+k)=*(a+N-1-k]或a[k]=a[-1+N-k]或a[k]=a[-1-k+N]或a[k]=a[-k-1+N]或a[k]=a[-k+N-1]或*(a+k)=*(a+N-k-1)或a[6-k]=s【3】a[N-k-1]=s或a[N-1-k]=s或a[6-k]=s或a[N-k-1]=s或*(a+N-k-1)=s【4】printf19)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:是将两个字符串连接为一个字符串,不许使用库函数strcat。-------------------------------------------------------*/#include"stdio.h"#include"string.h"main(){charstr1[80],str2[40];inti,j,k;gets(str1);gets(str2);puts(str1);puts(str2);/***********SPACE***********/________________;puts(str1);}JOIN(s1,s2)chars1[80],s2[40];{inti,j;/***********SPACE***********/________________;/***********SPACE***********/for(i=0;________________'\0';i++)s1[i+j]=s2[i];/***********SPACE***********/s1[i+j]=________________;}答案:【1】JOIN(str1,str2)【2】j=strlen(s1)或for(j=0;s1[j]!='10';j++);或for(j=0;s1[j];j++);【3】s2[i]!=或*(s2+i)!=【4】'\0'或NULL或020)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:求两个非负整数的最大公约数和最小公倍数。-------------------------------------------------------*/main(){intm,n,r,p,gcd,lcm;scanf("%d%d",&m,&n);if(m<n){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=%d\n",________________);}答案:【1】r!=0或r【2】r=m%n或r=m-m/n*n【3】n【4】gcd,lcm或n,lcm21)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:将一个字符串中的前N个字符复制到一个字符数组中去,不许使用strcpy函数。-------------------------------------------------------*/main(){charstr1[80],str2[80];inti,n;/***********SPACE***********/gets(________________);scanf("%d",&n);/***********SPACE***********/for(i=0;________________;i++)/***********SPACE***********/________________;/***********SPACE***********/________________;printf("%s\n",str2);}答案:【1】str1【2】i<n或n>i或i<=n-1或n-1>=i【3】str2[i]=str1[i]或*(str2+i)=*(str1+i)或*(str2+i)=str1[i]或str2[i]=*(str1+i)【4】str2[n]='\0'或str2[i]='\0'或str2[n]=0或str2[i]=0或*(str2+n)='\0'或*(str2+i)='\0'或*(str+n)=0或*(str2+i)=022)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:打印以下图形。*************************-------------------------------------------------------*/main(){chara[5][9]={""};inti,j;for(i=0;i<5;i++)/***********SPACE***********/for(j=i;________________;j++)a[i][j]='*';/***********SPACE***********/for(________________;i<5;i++){for(j=0;j<9;j++)/***********SPACE***********/printf("%c",________________);/***********SPACE***********/________________;}}答案:【1】j<i+5或i+5>j或j<=i+4或i+4>j【2】i=0【3】a[i][j]【4】printf("\n")23)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:求一个二维数组中每行的最大值和每行的和。-------------------------------------------------------*/#include"stdlib.h"main(){inta[5][5],b[5],c[5],i,j,k,s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)a[i][j]=random(40)+20;for(i=0;i<5;i++){/***********SPACE***********/k=a[i][0];________________;for(j=0;j<5;j++){/***********SPACE***********/if(k<a[i][j])________________;s=s+a[i][j];}b[i]=k;/***********SPACE***********/________________;}for(i=0;i<5;i++){for(j=0;j<5;j++)/***********SPACE***********/printf("%5d",________________);printf("%5d%5d",b[i],c[i]);printf("\n");}}答案:【1】s=0【2】k=a[i][j]【3】c[i]=s【4】a[i][j]24)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:对任一整数N(N≠0),它都可以分解成1(或-1)和一些质数(素数)因子的形式。例如:当N=150时,可分解成1×2×3×5×5;当N=-150时,可分解为-1×2×3×5×5。下边程序能实现这种分解过程。当N=150,输出以下分解结果:N=1*2*3*5*5-------------------------------------------------------*/main(){intn,i,j,r;scanf("%d",&n);if(n==0){printf("dataerror\n");exit(0);}/***********SPACE***********/elseif(________________)printf("n=1");else{printf("n=-1");n=-n;}/***********SPACE***********/for(________________;i<=n;i++){/***********SPACE***********/________________;while(r==0){printf("*%d",i);/***********SPACE***********/________________;r=n%i;}}printf("\n");}答案:【1】n>0或0<n【2】i=2【3】r=n%i【4】n=n/i或n/=i25)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:以下程序的功能如(图1)。-------------------------------------------------------*//***********SPACE***********/________________main(){floatx,f;scanf("%f",&x);/***********SPACE***********/if(x<0)________________;/***********SPACE***********/elseif(________________)f=2*x+1;elsef=sin(x)+5;/***********SPACE***********/printf("x=%f,y=%f\n",________________);}答案:【1】#include"math.h"或#include<math.h>【2】f=fabs(x+1)【3】x<=5或5>=x或x<6或6>x或x>=0&&x<=5或0<=x&&x<=5或x>=0&&5>=x或0<=x&&5>=x或!(x>5)【4】x,f(图1)26)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:删除一个字符串中的所有数字字符。-------------------------------------------------------*/#include"stdio.h"voiddelnum(char*s){inti,j;/***********SPACE***********/for(i=0,j=0;________________'\0';i++)/***********SPACE***********/if(s[i]<'0'________________s[i]>'9'){/***********SPACE***********/________________;j++;}s[j]='\0';}main(){char*item;printf("\ninputastring:\n");gets(item);/***********SPACE***********/________________;printf("\n%s",item);}答案:【1】s[i]!=或*(s+i)!=或*(i+s)!=【2】||【3】s[j]=s[i]或*(s+j)=*(s+i)或s[j]=*(s+i)或*(s+j)=s[i]【4】delnum(item)27)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:统计一个字符串中的字母、数字、空格和其它字符的个数。-------------------------------------------------------*/#include"stdio.h"main(){chars1[80];inta[4]={0};intk;/***********SPACE***********/________________;gets(s1);/***********SPACE***********/________________;puts(s1);for(k=0;k<4;k++)printf("%4d",a[k]);}voidfun(chars[],intb[]){inti;for(i=0;s[i]!='\0';i++)if('a'<=s[i]&&s[i]<='z'||'A'<=s[i]&&s[i]<='Z')b[0]++;/***********SPACE***********/elseif(________________)b[1]++;/***********SPACE***********/elseif(________________)b[2]++;elseb[3]++;}答案:【1】voidfun(chars[],intb[])【2】fun(s1,a)【3】'0'<=s[i]&&s[i]<='9'或s[i]>='0'&&s[i]<='9'或'0'<=s[i]&&'9'>=s[i]或s[i]>='0'&&'9'>=s[i]或48<=s[i]&&s[i]<=57或s[i]>=48&&s[i]<=57或48<=s[i]&&57>=s[i]或s[i]>=48&&57>=s[i]或!(x<48||x>57)或!(x<'0'||x>'9')【4】s[i]==''或s[i]==3228)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:将十进制数转换成十六进制数。-------------------------------------------------------*/#include"stdio.h"#include"string.h"main(){inta,i;chars[20];printf("inputainteger:\n");scanf("%d",&a);c10_16(s,a);/***********SPACE***********/for(________________;i>=0;i--)printf("%c",s[i]);printf("\n");}c10_16(charp[],intb){intj,i=0;/***********SPACE***********/while(________________){j=b%16;if(j>=0&&j<=9)/***********SPACE***********/________________;elsep[i]=j+55;b=b/16;i++;}/***********SPACE***********/________________;}答案:【1】i=strlen(s)-1或i=-1+strlen(s)【2】b>0或0<b或b!=0或0!=b或b【3】p[i]=j+'0'或p[i]=j+48或*(p+i)=j+'0'或*(p+i)=j+48【4】p[i]='\0'或p[i]=0或p[i]=NULL或*(p+i)='\0'或*(p+i)=0或*(p+i)=NULL29)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:下面函数为二分法查找key值。数组中元素已递增排序,若找到key则返回对应的下标,否则返回-1。-------------------------------------------------------*/fun(inta[],intn,intkey){intlow,high,mid;low=0;high=n-1;/***********SPACE***********/while(________________){mid=(low+high)/2;if(key<a[mid])/***********SPACE***********/________________;elseif(key>a[mid])/***********SPACE***********/________________;else/***********SPACE***********/________________;}return-1;}main(){inta[10]={1,2,3,4,5,6,7,8,9,10};intb,c;b=4;c=fun(a,10,b);if(c==1)printf("notfound");elseprintf("position%d\n",c);}答案:【1】low<=high或high>=low【2】high=mid-1【3】low=mid+1【4】returnmid或return(mid)30)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:输入字符串,再输入一个字符,将字符串中与输入字符相同的字符删除。-------------------------------------------------------*/#include"stdio.h"voidfun(chara[],charc){inti,j;/***********SPACE***********/for(i=j=0;________________;i++)if(a[i]!=c)a[j++]=a[i];/***********SPACE***********/________________;}main(){chara[20],cc;gets(a);/***********SPACE***********/________________;/***********SPACE***********/________________;puts(a);}答案:【1】a[i]!='\0'或a[i]或a[i]!=NULL【2】a[j]='\0'或a[j]=NULL或a[j]=0【3】cc=getchar()或scanf("%c",&cc)【4】fun(a,cc)31)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:用冒泡法对数组a进行由小到大的排序。-------------------------------------------------------*/voidfun(inta[],intn){inti,j,t;/***********SPACE***********/for(j=0;________________;j++)/***********SPACE***********/for(i=0;________________;i++)/***********SPACE***********/if(________________){t=a[i];a[i]=a[i+1];a[i+1]=t;}}main(){inti,a[10]={3,7,5,1,2,8,6,4,10,9};/***********SPACE***********/________________;for(i=0;i<10;i++)printf("%3d",a[i]);}答案:【1】j<=n-1或n-1>=j或j<=-1+n或-1+n>=j或j<n或n>j或j<n-1【2】i<n-j-1或n-j-1>i或i<n-1-j或n-1-j>i或i<=n-j-2或i<=n-2-j【3】a[i]>a[i+1]或a[i+1]<a[i]【4】fun(a,10)32)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:计算并输出500以最大的10个能被13或17整除的自然数之和。-------------------------------------------------------*/#include<conio.h>#include<stdio.h>/***********SPACE***********/intfun(________________){intm=0,mc=0,j,n;/***********SPACE***********/while(k>=2&&________________){/***********SPACE***********/if(k%13==0||________________){m=m+k;mc++;}k--;}/***********SPACE***********/________________;}main(){clrscr();printf("%d\n",fun(500));}答案:【1】intk【2】mc<10或10>mc或mc<=9或9>=mc【3】k%17==0或!(k%17)或k/17*17==k【4】returnm或return(m)33)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:以下程序的功能如(图1)。-------------------------------------------------------*/#include<conio.h>#include<stdio.h>/***********SPACE***********/doublef(________________){/***********SPACE***********/________________;/***********SPACE***********/if(________________)y=2.0*x*x+3.0*x+4.0;elsey=-2.0*x*x+3.0*x-4.0;/***********SPACE***********/________________;}main(){clrscr();printf("%f\n",f(f(-1.0)+f(5.0)));}答案:【1】floatx或doublex【2】doubley【3】x<=2或2>=x【4】returny或return(y)(图1)34)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:以下程序的功能如(图1)。-------------------------------------------------------*/#include<conio.h>#include<stdio.h>/***********SPACE***********/floatfun(________________,intn){/***********SPACE***********/________________;floatxa=0,s;for(j=0;j<n;j++)xa+=x[j]/n;/***********SPACE***********/________________;for(j=0;j<n;j++)s+=(x[j]-xa)*(x[j]-xa)/n;/***********SPACE***********/________________;}main(){floatx[100]={193.199,195.673,195.757,196.051,196.092,196.596,196.579,196.763};clrscr();printf("%f\n",fun(x,8));}答案:【1】floatx[]或float*x【2】intj【3】s=0或s=0.0【4】returns或return(s)(图1)35)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:计算并输出high以最大的10个素数之和,high由主函数传给fun函数,若high的值为100,则函数的值为732。-------------------------------------------------------*/#include<conio.h>#include<stdio.h>#include<math.h>intfun(inthigh){intsum=0,n=0,j,yes;/***********SPACE***********/while((high>=2)&&(________________)){yes=1;for(j=2;j<=high/2;j++)/***********SPACE***********/if(________________){yes=0;break;}if(yes){sum+=high;n++;}high--;}/***********SPACE***********/________________;}main(){clrscr();printf("%d\n",fun(100));}答案:【1】n<10或10>n【2】high%j==0或!(high%j)【3】returnsum或return(sum)92)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。例如:当s串为"ABCD"时,则t串的容应为"ABCDDCBA"。-------------------------------------------------------*/#include<conio.h>#include<stdio.h>#include<string.h>voidfun(char*s,char*t){inti,d;/***********SPACE***********/d=________________;/***********SPACE***********/for(i=0;i<d;________________)t[i]=s[i];for(i=0;i<d;i++)/***********SPACE***********/t[________________]=s[d-1-i];/***********SPACE***********/t[________________]='\0';}main(){chars[100],t[100];clrscr();printf("\nPleaseenterstringS:");scanf("%s",s);fun(s,t);printf("\nTheresultis:%s\n",t);}答案:【1】strlen(s)【2】i++或i=i+1或i+=1或++i【3】d+i或i+d【4】2*d或d*2或i+d或d+i394)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:用条件编译方法实现以下功能。输入一行电报文字,可以任选两种方式输出,一种为原文输出;另一种将字母变成下一个字母(如a变成b,C变成D,其他字符不变)输出。-------------------------------------------------------*/#defineCHANGEmain(){/***********SPACE***********/charstr[80],________________=str;intk;printf("Inputstring:");/***********SPACE***********/gets________________;printf("Outputstring:");#ifdefCHANGEfor(;*s!='\0';s++){if(*s>='a'&&*s<='z'||*s>='A'&&*s<='Z'){(*s)++;if(*s>'Z'&&*s<'Z'+2)/***********SPACE***********/________________;if(*s>'z')/***********SPACE***********/*s=________________;}}printf("%s\n",str);#elseprintf("%s\n",str);#endif}答案:【1】*s【2】(str)或(s)【3】*s='A'【4】'a'395)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:输入3个数a,b,c,按从小到大的顺序输出。-------------------------------------------------------*/main(){voidswap(int*p1,int*p2);intn1,n2,n3;int*pointer1,*pointer2,*pointer3;printf("pleaseinput3number:n1,n2,n3:");scanf("%d,%d,%d",&n1,&n2,&n3);pointer1=&n1;pointer2=&n2;pointer3=&n3;/***********SPACE***********/if(________________)swap(pointer1,pointer2);/***********SPACE***********/if(________________)swap(pointer1,pointer3);/***********SPACE***********/if(________________)swap(pointer2,pointer3);printf("thesortednumbersare:%d,%d,%d\n",n1,n2,n3);}/***********SPACE***********/voidswap(________________)int*p1,*p2;{intp;p=*p1;*p1=*p2;*p2=p;}答案:【1】n1>n2或n2<n1或*pointer1>*pointer2或*pointer2<*pointer1【2】n1>n3或n3<n1或*pointer1>*pointer3或*pointer3<*pointer1【3】n2>n3或n3<n2或*pointer2>*pointer3或*pointer3<*pointer2【4】p1,p2396)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:输入数组,最大的与最后一个元素交换,最小的与第一个元素交换,输出数组。-------------------------------------------------------*/main(){intnumber[10];input(number);max_min(number);output(number);}input(number)intnumber[10];{inti;/***********SPACE***********/for(i=0;________________;i++)scanf("%d,",&number[i]);scanf("%d",&number[9]);}max_min(array)intarray[10];{int*max,*min,k,l;int*p,*arr_end;arr_end=array+10;max=min=array;for(p=array+1;p<arr_end;p++)if(*p>*max)max=p;elseif(*p<*min)/***********SPACE***********/________________;k=*max;l=*min;*p=array[0];array[0]=l;/***********SPACE***********/________________;*p=array[9];/***********SPACE***********/________________;k=*p;return;}output(array)intarray[10];{int*p;for(p=array;p<array+9;p++)printf("%d,",*p);printf("%d\n",array[9]);}

温馨提示

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

评论

0/150

提交评论