安徽C语言省考参考答案.docx

上传人:b****7 文档编号:9260764 上传时间:2023-02-03 格式:DOCX 页数:19 大小:17.25KB
下载 相关 举报
安徽C语言省考参考答案.docx_第1页
第1页 / 共19页
安徽C语言省考参考答案.docx_第2页
第2页 / 共19页
安徽C语言省考参考答案.docx_第3页
第3页 / 共19页
安徽C语言省考参考答案.docx_第4页
第4页 / 共19页
安徽C语言省考参考答案.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

安徽C语言省考参考答案.docx

《安徽C语言省考参考答案.docx》由会员分享,可在线阅读,更多相关《安徽C语言省考参考答案.docx(19页珍藏版)》请在冰豆网上搜索。

安徽C语言省考参考答案.docx

安徽C语言省考参考答案

第一套

参考答案:

ERROR1:

n=0;

ERROR2:

if(x<10);

ERROR3:

elsen=4;

其他参考答案略。

参考答案:

BLANK1:

&a[i]或a+i

BLANK2:

a[0]或*(a+0)

BLANK3:

max1

其它参考答案略。

voidmain()

{

inti,j;

doubles=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=%f\n",s);

答案二

voidmain()

{

inti;

doubles=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=%f\n",s);

第二套

下面是计算1-1/3+1/5-1/7+……..的值,知道某项的绝对值小于0.00006为止

2.改错

#include

#include

#defineEPS0.00006

voidmain()

{

longi;

intsing;

doubles,t;

i=1;

s=1;/*$ERROR1$*/

sing=1;t=1;

while(fabs(t)>=EPS)/*$ERROR2$*/

{s=s+t;

i=i+1;/*$ERROR3$*/

sing=-sing;

t=sing*1.0/i;

}

printf("%e\n",s);

}

3.程序填空

#include

voidmain()

{

inti,a1,a2,s;

s=0;/*$BLANK1$*/

for(i=1;i<100;i++)/*$BLANK2$*/

{a1=i%10;

a2=i/10;

if(i%3==0)

if((a1==5)||(a2==5))/*$BLANK3$*/

s+=i;

}

printf("%d\n",s);

}

4.程序设计。

求S=1*2*3-2*3*4+3*4*5-4*5*6+5*6*7……….-20*21*22

输出格式S=23516

voidmain()

{

inti;

longs=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=%ld\n",s);

运行结果:

s=-4950

第三套

2.改错

#include

voidmain()

{

inti,x;

for(i=1;i<=10;i++)

{

scanf("%f",x);/*$ERROR1$*/

if(x/7=0)/*$ERROR2$*/

{printf("%d\n",x);

continue;/*$ERROR3$*/

}

}

if(i>10)printf("notexist");

}参考答案:

ERROR1:

scanf("%d",&x);

ERROR2:

if(x%7==0)

ERROR3:

break;

其他参考答案略。

程序填空

#include

voidmain()

{intn,i,sum;

printf("INPUTn:

");

scanf("%d",&n);/*$BLANK1$*/

sum=0;/*$BLANK2$*/

for(i=2;i<=n-1;i++)

if(n%i==0)

sum+=i;/*$BLANK3$*/

printf("sum=%d\n",sum);

}

参考答案:

BLANK1:

&n

BLANK2:

=0

BLANK3:

i

其它参考答案略。

4.程序设计

voidmain()

{

inti;

floats=0;

for(i=1;i<=50;i++)

s+=1.0*i/(2*i+1);

printf("s=%f\n",s);

运行结果:

s=24.026167

第四套

2.改错

#include

#include/*$ERROR1$*/

voidmain()

{intn=0,i;

charc[80];

gets(c);/*$ERROR2$*/

i=0;

while(c[i]!

='\0')/*$ERROR3$*/

{if(c[i]>='0'&&c[i]<='9')i++;

else{c[n]=c[i];n++;i++;}}

c[n]='\0';

puts(c);

}参考答案:

ERROR1:

#include

ERROR2:

gets(c);

ERROR3:

while(c[i]!

='\0')

其他参考答案略。

3.填空

#include

#include

voidmain()

{charstr[30],t[80];

inti,j;

gets(str);

for(i=0,j=0;str[i]!

='\0';i++)/*$BLANK1$*/

t[j++]=str[i];

for(--i;i>=0;i--)/*$BLANK2$*/

t[j++]=str[i];

t[j]='\0';/*$BLANK3$*/

puts(t);

}BLANK1:

'\0'

BLANK2:

0

BLANK3:

'\0'

其它参考答案略。

4.设计

除二余一…….

voidmain()

{intn;

n=1;

while

(1)

{

if(n%2==1&&n%3==2&&n%4==3&&n%5==4&&n%7==5)

break;

n++;

}

printf("n=%d\n",n);

运行结果:

n=299

第五套

2.改错

3.填空

4.设计

第六套

2.改错

#include

floatmean(intx,intnum)/*$ERROR1$*/

{inti;

floatavg;

for(avg=0,i=0;i

avg+=x[i];

avg%=num;/*$ERROR2$*/

return(avg);

}

voidmain()

{

inti,a[15];

for(i=0;i<15;i++)

a[i]=i+3;

printf("average:

%6.2f\n",mean(a));/*$ERROR3$*/

}

参考答案:

ERROR1:

floatmean(int*x,intnum)

ERROR2:

avg/=num;

ERROR3:

printf("average:

%5.2f\n",mean(a,15));

其他参考答案略。

3.填空

#include

#include

voidmain()

{inti;

FILE*fp;

if((fp=fopen("myfile.txt",___))==NULL)/*$BLANK1$*/

exit(0);

for(i=1;i<11;i++)

fprintf(___,"%d%f\n",i,sqrt(i));/*$BLANK2$*/

fclose(___);/*$BLANK3$*/

}参考答案:

BLANK1:

"w"

BLANK2:

fp

BLANK3:

fp

其它参考答案略。

4.设计

计算200到700之间能被九整除且个位数不为5的数之和

参考答案:

#include

PRINT(ints)

{

FILE*out;

if((out=fopen("result.txt","w+"))!

=NULL)

fprintf(out,"%d",s);

fclose(out);

}

voidmain()

{

inti,s=0;

for(i=200;i<=700;i++)

if(i%9==0&&i%10!

=5)

s+=i;

printf("%d\n",s);

PRINT(s);

}

运行结果:

第七套

2.改错

#include

#defineMAX20

voidmain()

{intn,i;

intf[max];/*$ERROR1$*/

printf("inputn:

");

scanf("%d",n);/*$ERROR2$*/

f[1]=1;f[2]=1;

for(i=3;i

f[i]=f[i-1]+f[i-2];

printf("%d\n",f[n]);

}参考答案:

ERROR1:

intn,i,f[MAX];

ERROR2:

scanf("%d",&n);

ERROR3:

for(i=3;i<=n;i++)

其他参考答案略。

3.填空

#include

ints(intk)

{inta,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$*/

}

voidmain()

{inti,sum;

sum=0;

for(i=101;i<=999;i++)

if(___!

=0)/*$BLANK3$*/

{printf("%d\n",i);

sum=sum+i;

}

printf("SUM=%d\n",sum);

}参考答案:

BLANK1:

==

BLANK2:

0

BLANK3:

s(i)

其它参考答案略。

4.设计

参考答案:

#include

PRINT(floatf)

{

FILE*out;

if((out=fopen("result.txt","w+"))!

=NULL)

fprintf(out,"A30=%f",f);

fclose(out);

}

voidmain()

{floata,b,s;

inti;

a=1;b=1;

for(i=3;i<=30;i++)

{s=i/(a+b);

a=b;

b=s;

}

printf("A30=%f\n",s);

PRINT(s);

}

运行结果:

A30=3.921752

第八套

2.改错

#include

voidmain()

{

inti,j;

i=1;

while(i<5)/*$ERROR1$*/

{

for(j=i;j<2*i;j++)

printf("%f",j+64);/*$ERROR2$*/

printf("\n");

i--;/*$ERROR3$*/

}

}参考答案:

ERROR1:

while(i<6)

ERROR2:

printf("%c",j+64);

ERROR3:

i++;

其他参考答案略。

3.填空

structstu

{intnum;

charname[12];

doublescore;

};

#include

voidmain()

{___stud[5]={{101,"Liping",45},/*$BLANK1$*/

{102,"Zhangping",62.5},

{103,"Hefang",92.5},

{104,"Chengling",87},

{105,"Wangming",58}};

inti,n=0;

printf("num\tname\tscore\n");

i=0;

while(i<5)

{

if(___<60)/*$BLANK2$*/

{printf("%d\t%s\t%.2f\n",stud[i].num,stud[i].name,stud[i].score);

___;/*$BLANK3$*/

}

i++;

}

printf("n=%d\n",n);

}参考答案:

ERROR1:

while(i<6)

ERROR2:

printf("%c",j+64);

ERROR3:

i++;

其他参考答案略。

4.设计

voidmain()

{longs;

inti;

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=%ld\n",s);

PRINT(s);

}

运行结果:

s=112

第九套

2.改错

#include

voidmain()

{

inta[10]={63,10,-47,28,96,2,19,-62,-22,25};

inti,j,temp;

for(i=0;i<9;i++)

{

for(j=0;j<9-i;j++)

{

if(a[j]>a[j+1])/*$ERROR1$*/

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=a[j];/*$ERROR2$*/

}

}

}

for(i=0;i<=9;i++)

printf("%5d",&a[i]);/*$ERROR3$*/

}

参考答案:

ERROR1:

if(a[j]

ERROR2:

a[j+1]=temp;

ERROR3:

printf("%5d",a[i]);

其他参考答案略。

3.填空

#include

intfac(intn)

{

intk,f;

f=___;/*$BLANK1$*/

for(k=1;k<___;k++)/*$BLANK2$*/

f*=k;

return(___);/*$BLANK3$*/

}

voidmain()

{inti;

for(i=1;i<=5;i++)

printf("%d!

=%d\n",i,fac(i));

}参考答案:

BLANK1:

!

=0或>0

BLANK2:

<=n或

BLANK3:

return(f)或returnf

其它参考答案略。

4.设计

大于500的素数中,输出前五个素数和。

参考答案1:

#include

PRINT(ints)

{

FILE*out;

if((out=fopen("RESULT.TXT","w+"))!

=NULL)

fprintf(out,"s=%d",s);

fclose(out);

}

voidmain()

{ints=0,i,j,n=1;

for(i=501;n<=5;i+=2)

{for(j=3;j<=i/2;j+=2)

if(i%j==0)break;

if(j>i/2)

{s=s+i;n++;printf("%d\n",i);}

}

printf("s=%d\n",s);

PRINT(s);

}

参考答案2:

#include

PRINT(ints)

{

FILE*out;

if((out=fopen("result.txt","w+"))!

=NULL)

fprintf(out,"s=%d",s);

fclose(out);

}

voidmain()

{ints=0;

inti=0,j,n;

n=500;

do/*直到型循环,当素数个数达到5个时结束循环*/

{

for(j=2;j<=n/2;j++)/*判断n是否为素数*/

if(n%j==0)

break;

if(j>n/2)

{s+=n;/*n是素数则求和*/

i++;/*n素数个数加1*/

}

n++;

}

while(i<5)

printf("s=%d\n",s);

PRINT(s);

}

运行结果:

s=2597

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1