首页 语言程序改错题

语言程序改错题

举报
开通vip

语言程序改错题【第1题】给定程序中函数fun的功能是:将长整数中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为87654时,t中的数为:864.#include<>#include<>Voidfun(longs,long*t){intd;longsL=1*t=0While(s>0){d=s%10/**********FOUND*********/if(d%2=0)答案if(d%2==0)/**********FOUND*********/{*t=d*sl+t;答案{*t=d*sl...

语言程序改错题
【第1题】给定程序中函数fun的功能是:将长整数中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为87654时,t中的数为:864.#include<>#include<>Voidfun(longs,long*t){intd;longsL=1*t=0While(s>0){d=s%10/**********FOUND*********/if(d%2=0)答案if(d%2==0)/**********FOUND*********/{*t=d*sl+t;答案{*t=d*sl+*t;sl*=10}/**********FOUND*********/s\=10;答案s/=10;}}main(){longs,t;clrscr();printf(“\npleaseenters:”)…………….【第2题】题目:编写函数fun其功能是:根据整型参m,计算如下公式的值:Y=1+1/3+1/5+1/7+….+1/(2m-3)include“”doublefun(intm){/**********FOUND*********/doubley=1答案doubley=1;inti/**********FOUND*********/for(i=1;iintfun(intx){intfun(intx){inty,k=0;/**********FOUND*********/while(x==0)答案while(x!=0){y=x%10;/**********FOUND*********/if(y=4)k++;答案if(y==4)k++;x=x/10;}/**********FOUND*********/return(y);答案return(k)}main(){inti,k=0;for(i=400;i<=499;i++)/**********FOUND*********/k=fun(i);答案k=k+fun(i);prinktf(“number=%d\n”,k);}【第7题】题目:用起泡法对10个整数从小到大排序。voidsort(intx[],intn){inti,j,k,t;for(i=0;ix[i+1])答案if(x[j]>x[j+1]){t=x[j];x[j]=x[j+1];x[j+1]=t;}………………..…………..……………………………../**********FOUND*********/scanf(“%d”,a[i]);答案scanf(“%d”,&a[i]);/**********FOUND*********/sort(n,a);答案sort(a,n);printf(out……………………………………………………………..【第8题】题目:将s所指字符的反序和正序进行连接形成一个新串放在t所指的数组中。例如当s所指的字符串的内容为“ABCD”时,t所指数组中的内容为“DCBAABCD”。#include<>#include<>#include<>/**********FOUND*********/voidfun(chars,chart)答案voidfun(chars[],chart[]){inti,d;/**********FOUND*********/d=len(s);答案d=strlen(s);/**********FOUND*********/for(i=1;i#include<>voidstrcopy(char*str1,char*str2,intm)/**********FOUND*********/charp1,p2;答案{char*p1,*p2;inti,j;/**********FOUND*********/p1=str1+m;答案p1=str1+m-1;/**********FOUND*********/if(*p1);答案while(*p1)……………………………….…………………………..………………………………………………..…………………………………………/**********FOUND*********/strcat(str1[0],star2[0],m);答案strcopy(str1,str2,m);………………………..……………………..}【第10题】题目:函数fun的功能是:计算正整数mun的各位的数字之积。例如,输入252,则输出应该是20。Longfun(longnum){/*********FOUND*********/longk;答案:longk=1;do{k*=num%10;/*********FOUND*********/num\=10;答案:num/=10;或num=num/10;}while(num);returnk;}main(){longn;printf("\nPleaseenteranumber:");/*********FOUND*********/scanf("%ld",n);答案:scanf("%ld",&n);/*********FOUND*********/printf("\n%ld\n",fun(longn));答案:printf("\n%ld\n'',fun(n));}【第11题】题目:函数fun的功能是:用下面的和式求圆周率的近似值。直到最后一项的绝对值小于等于。π=1-1+1-1+..........4357/*********FOUND*********/#include""答案:#include""或#include<>fun(){inti=1;/*********FOUND*********/ints=0,t=1,p=1;答案:floats=0,t=1,p=1;/*********FOUND*********/While(fabs(t))<=le-4)答案:while(fabs(t)>le-4){s=s+t;p=-p;i=i+2;t=p/i;}/*********FOUND*********/printf("pi=%d\n",s*4);答案:printf("pi=%f\n",s*4);}main(){fun();}【第12题】题目:下面程序的功能是:从键盘输入十个学生的成绩,统计最高分,最低分和平均分。max代表最高分,min代表最低分,avg代表平均分。main(){inti;/*********FOUND*********/floata[8],min,max,avg;答案:floata[10],min,max,avg;printf("input10score:");for(i=0;i<=9;i++){printf("inputascoreofstudent:");/*********FOUND*********/Scanf("%f",a);答案:scanf("%f",&a[i]);}/*********FOUND*********/max=min=avg=a[1];答案:max=min=avg=a[0];for(i=1;i<=9;i++){/*********FOUND*********/if(mina[i])min=a[i];if(maxeps);{s+=t;/***********************FOUND********************/t=n/(2*n+1)*t答案:t=t*n/(2*n+1)*tn++;}/***********************FOUND********************/returns;答案:return2*s;}main()……….【第16题】题目:给定程序中函数fun的功能是:极炫正整数num的个位数字之积。例如,若输入:252,则输出应该是20……..#include<>#include<>long<>/***********************FOUND********************/{longk=1答案:{longk=1;do{k*=num%10;/***********************FOUND********************/num\=10;答案:num/=10;/***********************FOUND********************/}while(!num);答案:}while(num);return(k);……..【第17题】题目:用“起泡法”对输入的十个字符排序后按从大到小的次序输出#defineN10#include<>#include<>main(){inti;charstr[N];for(i=0;i#include<>/****************FOUND****************/doublefun(double*a,*b)答案doublefun(double*a,double*b){doublec;/***************FOUND****************/c=sqr(a)+sqr(b);答案c=sqrt(*a)+sqrt(*b);/***************FOUND****************/Returna;答案returnc;或return(c);}mian(){doublea,b,y;clrscr();printf(“Entera&b:”);scanf(“%lf%lf”,&a,&b);y=fun(&a,&b,);printf(“y=%f\n”,y);getch();}【第20题】题目:将一个字符串中的大写字母转换成小写字母。例如:+输入aSdFG输出为asdfg。#include<>/***************FOUND*************/boolfun(char*c)答案charfun(char*c){if(*c<’Z’&&*c>=’A’)*c-=’A’-‘a’;/***************FOUND*************/Fun=c;答案return*c;或return(*c);}Mian()/***************FOUND************/chars[81].*p=s;答案{chars[81].*p=s;gets(s);while(*p){*p=fun(p);/***************FOUND***********/Puts(*p);答案putchar(*p);或printf(“%c”,*p);P++;}putchar(‘\n’);}【第21题】题目:在主题函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中。下列给定程序中,函数fun的功能是;计算数组元素中值为正数的平均值(不包括0)。例如,数组中元素的值一次为39,-47,21,2,-8,15,0.则程序的运行结果为doublefun(ints[]){/*************FOUND***********/intsum=;答案doublesum=;intc=0,i=0;/*************FOUND***********/while(s[i]=0)答案while(s[i]!=0)或while(s[i]){if(s[i]>0){sum+=s[i];c++;}i++;}/*************FOUND***********/sum\=c答案sum/=c;或sum=sum/c;/*************FOUND***********/returnc;答案returnsum或return(sum);}mian(){intx[1000];inti=0;do{scanf("%d",&x[i]);}while(x[i++]!=0);pintf("%f\n",fun(x));}【第22题】题目:给定程序中函数fun的功能是:求广义斐波那契级数的第n项。广义斐波那契级数的前n项为:1,1,1,3,5,9,17,31,......,项值通过函数值返回mian()函数。例如,若n=15,则应输出:Thevalueis:2209.#include<>#include<>longfun(intn){longa=1,b=1,c=1,d=1,k;******************FOUND*******************for(k=4;kmin){min=a[i];k=i;}*****************FOUND********************a[k]=a[i];a[0]=min;printf(“\naftereschange:\n”);for(i=0;i<10;i++)printf(“%d”,a[i]);printf(“\nk=%d\n”,k,min);【24题】题目:下列程序中,函数fun的功能是:找出一个大于给定整数m的最小的素数,并作为函数值返回#include<>#include<>intfun(intm)*****************FOUND********************{inti;k;答案{inti,k;for(i=m+1;;i++){for(k=2;k=i)return(i);}}main(){intn;clrscr();printf(“\npleaseentern:”);scanf(“%d”,&n);printf(“%d\n”,fun(n));}【25题】题目:下列给定程序中,函数fun的功能是:求1到10的阶乘的和。main(){inti;floatt,s=0;floatfac(intn);*****************FOUND********************for(i=1;i<10;i++)答案:for(i=1;i<=10;i++)*****************FOUND********************s=fac(i);答案:s=s+fac(i);或s+=fac(i);s=fac(i);printf(“%f\n”,s);}floatfac(intn){*****************FOUND********************inty=1;答案:floaty=1;inti;for(i=1;i<=n;i++)y=y*i;*****************FOUND********************return;答案:returny;或return(y);}【26题】题目:以下程序的功能是求如下表达式:S=1+#include<>main(){intn;floatfun();printf(“pleaseinputanumber:”);*****************FOUND********************print(“%d”,n):答案:scanf(“%d”,&n);printf(“%\n”,fun(n));}*****************FOUND********************fun(intn)答案:floatfun(intn){inti,j,t;floats;s=0;*****************FOUND********************while(i=1;i<=n;i++)答案:for(i=1;i<=n;i++){t=0;for(j=1;j<=i;j++)t=t+j;*****************FOUND********************s=s+1\t;答案:s+=t或s=s+t;}returns;}【第27题】题目:用指针作函数参数,编程序求一堆数组中的最大和最小的元素值。#defineN10/**********FOUND**********/Voidmaxmin(intarr[],,int*pr1,*pt2,n)Voidmaxmin(intarr[],int*pt1,int*pt2,intn){int1:/**********FOUND**********/*pt1=*pt2=&arr[0];*pt1=*pt2=arr[0];for(i=1;i*rt1)*pt1=arr[i];{if(arr[i]<*pt2)*pt2=arr[i];}}Main(){intarray[n]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,ab;/**********FOUND**********/*p1=&a;*p2=&b;maxmin(array,p1,p2,N);printf(”max=%d,min=%d”,a,b);}【第28题】Commentbymicrosoft:111题目:编写一个函数,该函数可以统计一个长度为3的字符串在另一个字符串中出现的次数。例如,假定输出的主字符串为:asdasasdfgasdaszx67asdmklo,子字符串为:asd,则应输出n=4。#include<>#include<>#include<>Intfun(char*str,char*substr){/**********FOUND**********/IntI,n=0intI,n=0;/**********FOUND**********/for(i=0;in;k++)for(k=4;k<=n;k++){s=s0+s1+s2;sum++sqrt(s);s0=s1;s1=s2;s2=s}returnsum;}main(){intn;scanf(%d",&n);printf("%1f\n",fun(n));【第30题】题目:函数fun的功能是:求二分之一的园面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积。例如输入圆的半径值:输出为:s=。#include<>#include<>/*********FOUND**********/floatfun(r)floatfun(floatr){float/*********FOUND**********/s=1/2**r*rs=2**r*r;/*********FOUND**********/returnr;returns;或return(s);}main(){floatx;clrscr();printf("Enterx:");scanf("%f",&x);printf("s=%f\n,fun(x));getch()}【第31题】题目:从键盘输入一个数,是3为数就加上100.是1位数就除以100,其他情况不变。intfun(intx){/*********FOUND**********/intk,d;答案:intk=0,d;/*********FOUND**********/while(x=0)答案:while(x!=0){d=x%10;k++;/*********FOUND**********/d=x/10答案:x=x/10}returnk;}main(){intm,n;………../*********FOUND**********/if(n=4)m=m/100;答案:if(n==4)m=m/100;}【第32题】题目:下面程序的功能是将十进制数转换成二进制数。#include””#include””fun(charp[],intb){intj,i=0;/**********FOUND**********/while(b==0)答案while(b>0){j=b%2;P[i++]=j+’0’;/**********FOUND**********/b=b/2;答案b=b/2;或b/=2;}P[i]=’\0’;}main(){inta,I;chars[20];printf(“inpacainteger:\n”);/*********FOUND*********/Scanf(“%d”,a)答案scanf(“%d”,&a)fun(s,a)/**********FOUND********/for(i=strlen(s);i>=0;i--)答案for(i=strlen(s)-1;i>=0;i--)printf(“%c”,s[i]);printf(“\n”);}【第33题】题目:输入10个数,要求输出这10个数的平均数。floataverage(fioatarray[10]){inti:floatavroem=array[10];/**********FOUND********/For(i=0;i<10;i++)答案For(i=1;i<10;i++)Sum=sum+array[i];aver=sum/;return(aver);}main(){/**********FOUND********/intscore[10],aver;答案floatscore[10],aver;inti;printf(”input10scores:\n”);for(i=0;i<10;i++)/**********FUND********/Scanf(“%f”,score);答案Scanf(“%f”,&score[i]);Printf(“\n”);/**********FOUND********/aver=average(score[10]);答案aver=average(score);printf(“averagescoreis%”,aver);【第34题】题目:函数fun的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。。k的值由主函数穿入,若k的值为500,则函数值为4622。intfun(intk){intm=0,mc=0,j:/**********FOUND********/while((k>=2)||(mc<10))答案while((k>=2)&&(mc<10)){/**********FOUND********/if((k%13=0||(k%17=0))答案if((k%13=0||(k%17==0)){m=m+k;mc++;}/**********FOUND********/k++;答案k--;}/**********FOUND********/return;答案returnm;或return(m);}Main(){printf(“%d\n”,fun(500));}【第35题】题目:fun函数的功能是:找出大于m的最小素数,并将其作为函数值返回。#includeIntfun(intm){inti,k;for(i-m+1,k++);{/**********FOUND********/for(k=1;k=i)/**********FOUND********/returnk;答案returni;或return(i);}{main(){intn;scanf(“%d”,%n);printf(“%d\n”,fun(n));}【第36题】题目:fun函数的功能是:求一个3行4例矩阵的外框的元素值之和,注意,矩阵四个角上的元素不能重复加。例如,矩阵元素为1,2,3,4,5,6,7,8,9,10,11,12,时,四框元素值之和应为65。intfun(inta[3][4],intm,intn);{/**********FOUND********/inti,j,s,sl=s2=s3=s4=0;答案inti,j,s,sl=0,s2=0,s3=0,s4=0;for(j=0;j*max)max=pelseif(*p2floats=0,t=1,p=1;3while(fa
本文档为【语言程序改错题】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥10.0 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
飞龙在天
暂无简介~
格式:doc
大小:52KB
软件:Word
页数:0
分类:
上传时间:2021-03-03
浏览量:1