C语言改错题答案 下载本文

内容发布更新时间 : 2024/5/16 3:51:45星期一 下面是文章的全部内容请认真阅读。

改错题 (一)

1. Cmody.011.C,功能是:从字符串数组str1中取出ASCII码值为偶数且下标为偶数

的字符依次存放到字符串t中。如:若str1所指的字符串为:4Az18c?Ge9a0z! 则t所指的字符串为:4z8z 注意:数组下标从0开始 #include #include #include #include void main() {

char str1[100],t[200]; int i,j;

/**/ i=0;j=o;/**/

strcpy(str1,\ for(i=0;i

/**/ if((str1[i]%2==0)&&(i%2!==0)) /**/ {t[j]=str1[i];j++;} }

t[j]='\\0';

printf(\ printf(\}

2.Cmody012.C,fun()功能:根据n,计算大于10的最小n个能被3整除的正整数的倒数之和。如:fun(8)=1/12+1/15+1/18+1/21+1/24+1/27+1/30+1/33=0.396 #include #include #include #include #define M 50

double fun(int n) {

double y=0.0; int i,j;j=0; for(i=1;;i++){

/**/ if(i<>10)&&(i%3==0)) /**/ { /**/ y+=1 1.0/i; /**/ j++; }

if(j==n) break;

}

return y; }

void main() {

printf(\

}

(二)

1. Cmody021.C,输出: * *** ***** *******

*********

#include void main() {

/**/int i; ,j; /**/ for(i=1;i<=5;i++){

for(j=1;j<=10-2*i;j++) printf(\/**/ for(j=1;j<=5 2*i-1;j++) /**/ printf(\ printf(\ } }

2. Cmody022.C的功能是求解百元买百鸡问题:设一只公鸡2元,一只母鸡1元,一只

小鸡0.5元。问一百元买一百只鸡,可以买母鸡,小鸡和公鸡?有多少种分配方案? #include #include /**/ int fun();/**/ {

int hen,cock,chicken,n=0; 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) /**/ {n++;

printf(\ if(n==20) getch(); } }

return n; }

void main() {

printf(\}

(三)

1.Cmody031.C,输入2个整数及一个运算符(+,-,*,/或%),进行相应运算后输出结果。

#include #include void main()

{int m,n,result,flag=0;

/**/ char ch , ; /**/

printf(\ scanf(\ /**/ 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(\ }

if(!flag) printf(\}

2.Cmody032.C,输出201~300间的所有素数,统计总个数。 #include #include int fun() {

int m,i,k,n=0;

for(m=201;m<=300;m+=2) {

k=sqrt(m);

for(i=2;i<=k;i++)

/**/ if(m/ %i==0) /**/ break;

/**/ if(i==k+1) /**/

{ printf(\ n++;

if(n==0) printf(\ } }

return n; }

void main()

{ printf(\num of odd numbers between 201-300 is %d\\n\}

(四)

1.Cmody041.C,统计输入字符串中小写英文字母的个数。 #include #include main()

{ char str1[128];

/**/ int i; ,len,sum=0; /**/ gets(str1);

len=strlen(str1); for(i=0;i

/**/if(str1[i]>='a'|| &&str1[i]<='z') /**/ sum++;