C题库改错与填空答案80106.docx
- 文档编号:24444396
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:39
- 大小:617.15KB
C题库改错与填空答案80106.docx
《C题库改错与填空答案80106.docx》由会员分享,可在线阅读,更多相关《C题库改错与填空答案80106.docx(39页珍藏版)》请在冰豆网上搜索。
C题库改错与填空答案80106
一、改错题
第1题:
#include
#include
#include
#include
voidmain()
{charstr1[100],t[200];
inti,j;
/**/i=0;/**//*改为j=0;*/
clrscr();
strcpy(str1,"4AZ18c?
Ge9a0z!
");
for(i=0;i {/**/if((str1[i]%2==0)&&(i%2! =0))/**/ /*改为if((str1[i]%2==0)&&(i%2==0))*/ {t[j]=str1[i]; j++; } } t[j]='\0'; printf("\nOriginalstring: %s\n",str1); printf("\nResultstring: %s\n",t); } 第2题: #include #include #include #include #defineM50 doublefun(intn) {doubley=0.0; inti,j; j=0; for(i=1;;i++) {/**/if((i<10)&&(i%3==0))/**//*改为if((i>10)&&(i%3==0))*/ {/**/y+=1/i;/**//*改为y+=1.0/i;*/ j++; } if(j==n)break; } returny; } voidmain() {clrscr(); printf("fun(8)=%8.3lf\n",fun(8)); } 第3题: #include voidmain() {/**/inti,j;/**//*改为inti,j,k;*/ for(i=1;i<=6;i++) {for(k=1;k<=10+i;k++) printf(""); for(j=1;j<=7-i;j++) printf("*")/**/: /**//*改为;*/ printf("\n"); } getch(); } 第4题: #include #include /**/intfun();/**//*改为intfun()*/ {inthen,cock,chicken,n=0; clrscr(); for(cock=0;cock<=50;cock+=1) for(hen=0;hen<=100;hen=hen+1) {chicken=2*(100-hen-2*cock); /**/if(cock+hen+chicken=100)/**//*改为if(cock+hen+chicken==100)*/ {n++; printf("%d-->hen: %d,cock: %d,chicken: %d\n",n,hen,cock,chicken); if(n==20)getch(); } } returnn; } voidmain() {intnum; num=fun(); printf("\nThereare%dsolutions.\n",num); getch(); } 第5题: #include #include voidmain() {intm,n,result,flag=0; /**/charch,/**//*改为charch;*/ clrscr(); printf("Inputanexpression: "); scanf("%d%c%d",&m,&ch,&n); /**/switchch/**//*改为switch(ch)*/ {case'+': result=m+n;break; case'-': result=m-n;break; case'*': result=m*n;break; case'%': result=m%n;break; case'/': result=m/n;break; default: {printf("Error! \n");flag=1;} } if(! flag)printf("%d%c%d=%d\n",m,ch,n,result); getch(); } 第6题: #include #include voidmain() {chars[20]="tableleft100",t[20]; /**/chartab[4,2]={{'a','f'},{'b','e'},{'e','a'},{'f','b'}};/**/ /*改为chartab[4][2]={{'a','f'},{'b','e'},{'e','a'},{'f','b'}};*/ inti,j=0; strcpy(t,s); while(t[j]) {for(i=0;i<=3;i++) {if(t[j]==tab[i][0]) {/**/t[j]=tab[i][2];/**//*改为t[j]=tab[i][1];*/ break; } } j++; } printf("\nThesourcestring: %s\n",s); printf("\nThetargetstring: %s\n",t); getch(); } 第7题: #include #include main() {charstr1[128]; /**/inti,len;sum=0;/**//*改为inti,len,sum=0;*/ printf("\nPleaseinputthestring: "); gets(str1); len=strlen(str1); for(i=0;i {/**/if(str1[i]>='0'||str1[i]<='9')/**/ /*改为if(str1[i]>='0'&&str1[i]<='9')*/ sum++; } printf("%d\n",sum); getch(); } 第8题: #include #include #defineM8 main() {inta[M],i; printf("Pleaseinput8numbers: \n"); for(i=0;i scanf("%d",/**/a[i]/**/);/*改为&a[i]*/ printf("Inverseorderis: \n"); /**/for(i=M-1;i<=0;i--)/**//*改为for(i=M-1;i>=0;i--)*/ printf("%d",a[i]); printf("\n"); getch(); } 第9题: #include #include main() {/**/charstr1/**/;/*改为charstr1[20];*/ inti,len,sum=0; printf("Pleaseinputastring: \n"); scanf("%s",str1); len=strlen(str1); for(i=0;i { if(str1[i]>='A'&&str1[i]<='Z') /**/sum--;/**//*改为sum++;*/ } printf("%d\n",sum); getch(); } 第10题: #include #include /**/#includeM5/**//*改为#defineM5*/ main() {inta[M],i; printf("Pleaseinput5numbers: \n"); for(i=0;i scanf("%d",&a[i]); printf("Evennumbers: \n"); for(i=0;i /**/if(a[i]/2==0)/**//*if(a[i]%2==0)*/ printf("%d",a[i]); printf("\n"); getch(); } 第11题: #include #include main() {charstr1[128],str2[128]; inti,len; gets(str1); len=strlen(str1); /**/for(i=0;i>len;i++)/**//*改为for(i=0;i {if(str1[i]>='0'&&str1[i]<='8') str2[i]=str1[i]+1; elseif(str1[i]=='9')str2[i]='0'; elsestr2[i]=str1[i]; } /**/str2[i]='\n';/**//*改为str2[i]='\0';*/ puts(str2); getch(); } 第12题: #include #include voidmain() {chars1[30]="People'sRepublicof",s2[]="China"; char*ps1,*ps2; /**/ps1=NULL;/**//*改为ps1=s1;*/ ps2=s2; /**/while(*ps1==NULL)/**//*改为while(*ps1! =NULL)*/ ps1++; while(*ps2) *(ps1++)=*(ps2++); printf("\n%s\n",s1); getch(); } 第13题: #include #include voidmain() {floata[3],s,area; inti; printf("Pleaseinput3numbers: \n"); for(i=0;i<3;i++) scanf("%f",/**/a[i]/**/);/*改为&a[i]*/ /**/if(a[0]+a[1]>a[2]||a[1]+a[2]>a[0]||a[0]+a[2]>a[1])/**/ /*改为if(a[0]+a[1]>a[2]&&a[1]+a[2]>a[0]&&a[0]+a[2]>a[1])*/ {s=(a[0]+a[1]+a[2])/2; area=sqrt(s*(s-a[0])*(s-a[1])*(s-a[2])); printf("areais%.2f\n",area); } else printf("error.\n"); getch(); } 第14题: #include #include /**/voidfun()/**//*改为intfun()*/ {intlarge,middle,small,n=0; clrscr(); for(large=0;large<=33;large++) for(middle=0;middle<=50;middle++) {small=2*(100-3*large-2*middle); /**/if(large+middle+small=100)/**//*改为if(large+middle+small==100)*/ {n++; printf("%d-->large: %d,middle: %d,small: %d\n",n,large,middle,small); } } returnn; } voidmain() {intnum; num=fun(); printf("\nThereare%dsolutions.\n",num); getch(); } 第15题: #include voidmain() {inti; /**/for(i=100;i<200;i++);/**//*改为for(i=100;i<200;i++)*/ if((i-2)%4==0) if(! ((i-3)%7)) if(i%9==5) printf("%d\n",/**/&i/**/);/*改为i*/ getch(); } 第16题: #include /**/voidswap(intp1,intp2)/**//*改为voidswap(int*p1,int*p2)*/ {inttemp; temp=*p1; /**/p1=p2;/**//*改为*p1=*p2;*/ *p2=temp; } voidmain() {inta,b; printf("pleaseinput2numbers: \n"); scanf("%d%d",&a,&b); printf("\nOriginal: a=%db=%d\n",a,b); swap(&a,&b); printf("\nResult: a=%db=%d\n",a,b); getch(); } 第17题: #include voidmain() {intb,i; /**/inta=c=0;/**//*改为inta=0,c=0;*/ /**/for(i=0,i<=100,i+=2)/**//*改为for(i=0;i<=100;i+=2)*/ {a+=i; b=i+1; c+=b; } printf("totalofevennumbers: %d\n",a); printf("totalofoddnumbers: %d\n",c-101); getch(); } 第18题: #include voidmain() {intx,y,z,i,result=520; for(x=1;x<10;x++) for(y=1;y<10;y++) /**/for(z=1;z<10;z++)/**//*改为for(z=0;z<10;z++)*/ {i=100*x+10*y+z+100*y+10*z+z; /**/if(i=result)/**//*改为if(i==result)*/ printf("x=%d,y=%d,z=%d\n",x,y,z); } getch(); } 第19题: #include #defineF(x)(x*x-2.3*x+5.6)/(x+8.2) voidmain() {floata=6.0,b=3.0,c; /**/ints;/**//*改为floats;*/ printf("\nPleaseinputc: "); scanf("%f",/**/c/**/);/*改为&c*/ /**/s=F(a,b,c);/**//*改为s=F(a)+F(b)+F(c)*/ printf("\ns=%.2f\n",s); getch(); } 第20题: #include voidmain() {intf,s,t,n; printf("\nThelistis: \n"); for(n=100;n<1000;n++) {f=n%10; s=(n%100)/10; /**/t=n%100;/**//*改为t=n/100;*/ /**/if(t*t*t+s*s*s+f*f*f=n)/**//*改为if(t*t*t+s*s*s+f*f*f==n)*/ printf("%d",n); } printf("\n"); getch(); } 二、填空题 第1题: .补充程序Ccon011.C,该程序的功能是计算阶乘。 #include voidmain() {/**//**/p;/*填long*/ inti; p=1; /**//**/(i=1;i<=8;i++)/*填for*/ p=p*i; printf("\np=%ld",p); getch(); } 第2题: #include voidmain() {inta,b,c; floatf; clrscr(); printf("Pleaseinputab: "); scanf("%d%d",&a,&b); f=/**//**/;/*填1.0*a/b*/ c=/**//**/(f*100)%10;/*填(int)*/ printf("\na/b=%fTheseconddecimalplaceis: %d\n",f,c); getch(); } 第3题: #include #include intmax,min; voidfind_max_min(int*p,intn) {int*q; max=min=*p; for(q=p;q**//**/;q++)/*填p+n*/ if(/**//**/)max=*q;/*填max<*q;*/ elseif(min>*q)min=*q; } voidmain() {inti,num[10]; printf("Input10numbers: "); for(i=0;i<10;i++)scanf("%d",&num[i]); find_max_min(/**//**/,10);/*填num*/ printf("max=%d,num=%d\n",max,min); } 第4题: 补充程序Ccon021.c,使其计算满足下式的一位整数A和B的值。 AB ×BA —————— 403 #include voidmain() { inta,b,k; intplu=/**//**/;/*填403*/ for(a=1;a<10;a++) for(b=1;b<10;b++) {k=(a*10+b)*/**//**/;/*填b*10+a*/ if(k==plu)printf("A=%d,B=%d\n",a,b); } } 第5题: #include voidmain() {intn,a,b; /**//**//*填a=b=0;*/ scanf("%d",&n); while(/**//**/)/*填n! =0*/ {if(n>0)a++; else/**//**//*填b++;*/ scanf("%d",&n); } printf("Positiveinteger: %d,negativeinteger: %d\n",a,b); } 第6题: #include #include intprime(intn) {intk,flag=1; for(k=2;k<=n/2+1;k++) if(n%k==0){flag=/**//**/;break;}/*填0*/ returnflag; } voidmain() {intnum,a; clrscr(); do {printf("Pleaseinputanevennumber: "); scanf("%d",&num); }while(num<=6||num%2==1); for(a=2;a<=num/2+1;a++) if(prime(a)&&prime(/**//**/))/*填num-a*/ printf("\n%d=%d+%d",num,a,num-a); } 第7题: #include #include /**//**//*填voidmain()*/ {floatx,x0,f,f1; x=1.5; do {x0=x; f=((2*x0-4)*x0+3)*x0-6; f1=(6*x0-8)*x0+3; x=x0-f/f1; }/**//**/(fabs(x-x0)>=1e-6);/*填while*/ printf("therootis: %.2f\n",x); } 第8题: #include main() {/**//**/str[20];/*填char*/ inti; floatx; printf("Pleaseinputastring: \n"); scanf("%s",/**//**/);/*填str*/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 题库 改错 填空 答案 80106