发布时间 : 星期三 文章C语言程序改错题更新完毕开始阅读
实用文档
------------------------------------------------------*/
#include
char * fun (char *s, char *t ) {
char *p , *r, *a;
/**********FOUND**********/ a == NULL; while ( *s ) { p = s; r = t; while ( *r )
/**********FOUND**********/ if ( r == p ) { r++; p++; } else break;
/**********FOUND**********/ if ( *r ='\\0' ) a = s; s++; }
return a ; } main() {
char s[100], t[100], *p;
printf(\ printf(\ p = fun( s, t ); if ( p )
printf(\ else
printf(\} 答案:
实用文档
1). a = NULL; 2). if ( *r == *p )
3). if ( *r == '\\0' ) a = s;
第9题 【程序改错】
--------------------------------------------------------
功能:从m个学生的成绩中统计出高于和等于平均分的学生人数, 此人数由函数值返回。平均分通过形参传回,输入学生成 绩时,用-1结束输入,由程序自动统计学生人数。 例如:若输入 8 名学生的成绩,输入形式如下: 80.5 60 72 90.5 98 51.5 88 64 -1 结果为:
The number of students :4 Ave = 75.56。
------------------------------------------------------*/
#include
int fun ( float *s, int n, float *aver ) {
float av, t ; int count , i; count = 0; t=0.0;
for ( i = 0; i < n; i++ ) t += s [ i ]; av = t / n; printf( \ for ( i = 0; i < n; i++ ) /**********FOUND**********/ if ( s[ i ] < av ) count++; /**********FOUND**********/ aver = av;
/**********FOUND**********/ return count } main() {
float a, s[30], aver; int m = 0;
printf ( \ scanf(\
实用文档
while( a>0 ) {
s[m] = a; m++;
scanf ( \ }
printf( \ printf( \} 答案:
1). if ( s[ i ] >= av ) count++; 2). *aver = av; 3). return count;
第10题 【程序改错】
--------------------------------------------------------
功能:根据以下公式求π值,并作为函数值返回。
例如:给指定精度的变量eps输入0.0005时,应当输出Pi=3.140578。
π 1 1 2 1 2 3 1 2 3 4 — = 1 + — + — x — + — x — x — + — x — x — x — + ... 2 3 3 5 3 5 7 3 5 7 9
------------------------------------------------------*/ #include
double s,t; int n=1; s=0.0; t=1;
/**********FOUND**********/ while(t<=eps) { s+=t;
/**********FOUND**********/ t=n/(2*n+1)*t; n++; }
/**********FOUND**********/ return s;
实用文档
} main() {
double x; scanf(\
printf(\} 答案:
1). while(t>eps) 或 while(eps
2). t=t*n/(2*n+1); 或 t=1.0*n/(2*n+1)*t; 或 t=n/(2*n+1.0)*t; 或 t=n/(2.0*n+1)*t; 或 t=n/(2.0*n+1.0)*t; 或 t=1.0*n/(2.0*n+1.0)*t;
3). return 2 * s ; 或 return (2*s); 或 return(2*s); 或 return (s*2); 或 return(s*2);
第11题 【程序改错】
--------------------------------------------------------
功能:实现两个字符串的连接。
例如:输入dfdfqe和12345时,则输出dfdfqe12345.
------------------------------------------------------*/
#include
char s1[80],s2[80];
void scat(char s1[],char s2[]); gets(s1); gets(s2); scat(s1,s2); puts(s1); }
void scat (char s1[],char s2[]) {
int i=0,j=0;
/**********FOUND**********/ while(s1[i]= ='\\0') i++;
/**********FOUND**********/ while(s2[j]= ='\\0') {