1、安徽C语言省考参考答案第一套参考答案: ERROR1:n=0; ERROR2: if(x10) ; ERROR3:else n=4; 其他参考答案略。参考答案: BLANK1:&ai 或 a+i BLANK2:a0 或 *(a+0) BLANK3:max1 其它参考答案略。void main() int i,j; double s=0,s1; for(i=1;i=10;i+) s1=1; for(j=1;j=i;j+) s1=s1*j/(2*j+1); if(i%2) s+=s1; else s-=s1; printf(s=%fn,s);答案二void main() int i; double
2、 s=0,s1=1; for(i=1;i=10;i+) s1=s1*i/(2*i+1); if(i%2) s+=s1; else s-=s1; printf(s=%fn,s);第二套下面是计算1-1/3+1/5-1/7+.的值,知道某项的绝对值小于0.00006为止2.改错#include #include #define EPS 0.00006void main() long i; int sing; double s,t; i=1; s=1; /*$ERROR1$*/ sing=1;t=1; while (fabs(t)=EPS) /*$ERROR2$*/ s=s+t; i=i+1; /*
3、$ERROR3$*/ sing=-sing; t=sing*1.0/i; printf(%en,s);3.程序填空#include void main() int i,a1,a2,s; s=0; /*$BLANK1$*/ for(i=1;i100;i+) /*$BLANK2$*/ a1=i%10; a2=i/10; if(i%3=0) if(a1=5)|(a2=5) /*$BLANK3$*/ s+=i; printf(%dn,s);4.程序设计。求S=1*2*3-2*3*4+3*4*5-4*5*6+5*6*7.-20*21*22输出格式S=23516void main() int i; lon
4、g s=0; for(i=1;i=20;i+) if(i%2) s+=i*(i+1)*(i+2); else s-=i*(i+1)*(i+2); printf(s=%ldn,s);运行结果: s=-4950第三套2.改错#include void main() int i,x; for(i=1;i10) printf(not exist );参考答案: ERROR1:scanf(%d,&x); ERROR2:if(x%7=0) ERROR3:break; 其他参考答案略。程序填空#include void main()int n,i,sum; printf(INPUT n:); scanf(%
5、d,&n); /*$BLANK1$*/ sum=0; /*$BLANK2$*/ for(i=2; i=n-1; i+) if(n%i=0) sum+=i; /*$BLANK3$*/ printf(sum=%dn,sum);参考答案: BLANK1: &n BLANK2: =0 BLANK3: i 其它参考答案略。4.程序设计void main() int i; float s=0; for(i=1;i=50;i+) s+=1.0*i/(2*i+1); printf(s=%fn,s);运行结果: s=24.026167第四套2.改错#include #include /*$ERROR1$*/vo
6、id main() int n=0,i; char c80; gets(c); /*$ERROR2$*/ i=0; while (ci!=0) /*$ERROR3$*/ if(ci=0&ci=9) i+; else cn=ci;n+;i+; cn=0; puts(c);参考答案: ERROR1:#include ERROR2:gets(c); ERROR3:while (ci!=0) 其他参考答案略。3.填空#include#includevoid main()char str30,t80; int i,j; gets(str); for(i=0,j=0;stri!=0;i+) /*$BLAN
7、K1$*/ tj+=stri; for(-i;i=0;i-) /*$BLANK2$*/ tj+=stri; tj=0; /*$BLANK3$*/ puts(t); BLANK1: 0 BLANK2: 0 BLANK3: 0 其它参考答案略。4.设计除二余一.void main()int n; n=1; while(1) if(n%2=1&n%3=2&n%4=3&n%5=4&n%7=5) break; n+; printf(n=%dn,n);运行结果: n=299第五套2.改错3.填空4.设计第六套2.改错#includefloat mean(int x,int num) /*$ERROR1$*
8、/int i; float avg;for(avg=0,i=0;inum;i+) avg+=xi; avg%=num; /*$ERROR2$*/ return(avg); void main() int i,a15; for(i=0;i15;i+) ai=i+3; printf(average:%6.2fn,mean(a); /*$ERROR3$*/ 参考答案: ERROR1:float mean(int *x,int num) ERROR2:avg/=num; ERROR3:printf(average:%5.2fn,mean(a,15); 其他参考答案略。3.填空#include #inc
9、lude void main()int i; FILE *fp; if(fp=fopen(myfile.txt,_)=NULL) /*$BLANK1$*/ exit(0); for(i=1;i11;i+) fprintf(_,%d %fn,i,sqrt(i); /*$BLANK2$*/fclose(_); /*$BLANK3$*/参考答案: BLANK1: w BLANK2: fp BLANK3: fp 其它参考答案略。4.设计计算200到700之间能被九整除且个位数不为5的数之和参考答案:#include PRINT(int s) FILE *out; if(out=fopen(result
10、.txt,w+)!=NULL) fprintf(out,%d,s); fclose(out);void main()int i,s=0;for(i=200;i=700;i+) if(i%9=0 & i%10!=5) s+=i;printf(%dn,s);PRINT(s);运行结果:第七套2.改错#include #define MAX 20void main() int n, i; int fmax; /*$ERROR1$*/ printf(input n:); scanf(%d,n); /*$ERROR2$*/ f1=1;f2=1; for(i=3;in;i+) /*$ERROR3$*/ f
11、i=fi-1+fi-2; printf(%dn,fn); 参考答案: ERROR1:int n,i,fMAX; ERROR2:scanf(%d,&n); ERROR3:for(i=3;i=n;i+) 其他参考答案略。3.填空#include int s(int k)int a,b,c; a=k%10; b=k/10%10; c=k/100; if(k_a*a*a+b*b*b+c*c*c) /*$BLANK1$*/ return(1); else return(_); /*$BLANK2$*/void main()int i,sum; sum=0; for (i=101;i=999;i+) if
12、(_!=0) /*$BLANK3$*/ printf(%dn,i); sum=sum+i; printf(SUM=%dn,sum);参考答案: BLANK1: = BLANK2: 0 BLANK3: s(i) 其它参考答案略。4.设计参考答案:#include PRINT(float f) FILE *out; if(out=fopen(result.txt,w+)!=NULL) fprintf(out,A30=%f,f); fclose(out);void main()float a,b,s;int i;a=1;b=1;for(i=3;i=30;i+) s=i/(a+b); a=b; b=s
13、; printf(A30=%fn,s);PRINT(s);运行结果: A30=3.921752第八套2.改错#include void main() int i,j; i=1; while(i5) /*$ERROR1$*/ for(j=i;j2*i;j+) printf(%f,j+64); /*$ERROR2$*/ printf(n); i-; /*$ERROR3$*/ 参考答案: ERROR1:while(i6) ERROR2:printf(%c,j+64); ERROR3:i+; 其他参考答案略。3.填空struct stu int num; char name12; double sco
14、re;#include void main( ) _stud5= 101,Li ping,45, /*$BLANK1$*/ 102,Zhang ping,62.5, 103,He fang,92.5, 104,Cheng ling,87, 105,Wang ming,58 ; int i,n=0; printf(numtnametscoren); i=0; while(i5) if(_60) /*$BLANK2$*/ printf(%dt%st%.2fn,studi.num,studi.name,studi.score); _; /*$BLANK3$*/ i+; printf(n=%dn,n)
15、;参考答案: ERROR1:while(i6) ERROR2:printf(%c,j+64); ERROR3:i+; 其他参考答案略。4.设计void main()long s; int i; s=0; for(i=2;i=150;i+) if(i*i%10=i)|(i*i%100=i)|(i*i%1000=i) s+=i; printf(s=%ldn,s); PRINT(s);运行结果: s=112第九套2.改错#include void main() int a10=63,10,-47,28,96,2,19,-62,-22,25; int i,j,temp; for (i=0;i9;i+)
16、 for(j=0;jaj+1) /*$ERROR1$*/ temp= aj; aj= aj+1; aj+1=aj; /*$ERROR2$*/ for(i=0;i=9;i+) printf(%5d,&ai); /*$ERROR3$*/ 参考答案: ERROR1:if (ajaj+1) ERROR2:aj+1=temp; ERROR3:printf(%5d,ai); 其他参考答案略。3.填空#include int fac(int n) int k,f; f=_; /*$BLANK1$*/ for(k=1;k_;k+) /*$BLANK2$*/ f*=k; return(_); /*$BLANK3
17、$*/void main()int i;for(i=1;i0 BLANK2: =n 或 n+1 BLANK3: return (f) 或 return f 其它参考答案略。4.设计大于500的素数中,输出前五个素数和。参考答案1:#include PRINT(int s) FILE *out; if(out=fopen(RESULT.TXT,w+)!=NULL) fprintf(out,s=%d,s); fclose(out);void main()int s=0,i,j,n=1;for (i=501;n=5;i+=2) for (j=3;ji/2) s=s+i;n+;printf(%dn,i
18、); printf(s=%dn,s);PRINT(s);参考答案2:#include PRINT(int s) FILE *out; if(out=fopen(result.txt,w+)!=NULL) fprintf(out,s=%d,s); fclose(out);void main()int s=0; int i=0,j,n; n=500; do /*直到型循环,当素数个数达到5个时结束循环*/ for(j=2;jn/2) s+=n; /*n是素数则求和*/ i+; /*n素数个数加1*/ n+; while(i5) printf(s=%dn,s); PRINT(s);运行结果: s=2597
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1