好文档 - 专业文书写作范文服务资料分享网站

算法竞赛入门经典第二版习题答案

天下 分享 时间: 加入收藏 我要投稿 点赞

#ifdef LOCAL freopen(\#endif int i;

double H=0; for(i=1;2*i-1<1000000;i++)

{

if(i%2==1)H+=(double)1/(2*i-1); else H-=(double)1/(2*i-1);

}

printf(\return 0;

}

2-8(fin,double)

#include #include int main()

{

FILE *fin,*fout; fin=fopen(\int n,m,i; double H=0;

double ii; fscanf(fin,\for(i=n;i<=m;i++)

{

ii=(double)i*i; H+=1/ii;

}

fprintf(fout,\

fprintf(fout,\比较 double 和 long long 运行效 率

fclose(fin); fclose(fout); return 0;

}

2-8(fin,long long)

#include #include int main()

FILE *fin,*fout; fin=fopen(\double H=0;

fscanf(fin,\

{

long long ii=1;// 定义

ii=ii*i*i; // 不用 ii=i*i 也不是 ii*=i*i, 这样做是为了防止 i*i 溢出 ; 可以 认为

这一步将 int 型转化为 long long 型

H+=1/(double)ii;// 不是 (double)1/ii

}

fprintf(fout,\

fprintf(fout,\比较 double 和 long long 运行 效率

{

11 / 15

fclose(fin); fclose(fout); return 0;

}

2-8(freopen)

#include #define LOCAL int main()

{

#ifdef LOCAL freopen(\#endif int n,m,i;

double H=0,ii; scanf(\{

H+=1/((double)i*i);

}

printf(\

return 0;

}

2-9(fin)

#include int main()

{

FILE *fin,*fout; fin=fopen(\fscanf(fin,\fclose(fout); return 0;

}

2-9(freopen) #include int main()

{

#ifdef LOCAL freopen(\#endif int a,b,c;

scanf(\

}

2-10(全书看完再看这段代码 ) #include

#include using namespace std; int main()

{

freopen(\

do

{

int a=d[0]*100+d[1]*10+d[2]; int b=d[3]*100+d[4]*10+d[5]; int c=d[6]*100+d[7]*10+d[8];

if(c==3*a&&b==2*a)printf(\}while(next_permutation(d,d+9)); return 0;

}

12 / 15

08dgj77c6h1h1yk7phhy1xkfw968dk01avy
领取福利

微信扫码领取福利

微信扫码分享