1、西工大POJ100题全新DOC1计算A+B 2圆及圆球等的相关计算3计算成绩4找最大数5找幸运数6奖金发放7出租车费8是该年的第几天9成绩转换10求建筑高度11区间内素数12计算13两个整数之间所有的素数14最次方数15自然数立方的乐趣16五猴分桃17完全数18二分求根19你会存钱吗?20级数和21幸运数字722粒子裂变23特殊整数24最大乘积25解不等式26危险的组合27子序列的和29探索合数世纪30韩信点兵31亲和数32高低交换33循环移位35组合数36积分计算37数据加密38获取指定二进制位39ACKERMAN40不会吧,又是A+B41平均值函数42插入排序43一维数组赋值44右下角45
2、右上角46山迪的麻烦47冒泡排序48恐怖水母49左上角50一维数组加法51字符串排序52字符串左中右53文章统计54找出数字55字符串比较56THE CLOCK57合并字符串58特殊要求的字符串59字符串逆序60COIN TEST61小型数据库62单词频次65检测位图长宽67子字符串替换68复数69字符串加密编码70重组字符串71大数除法72创建与遍历职工链表73大数加法74大数减法75链表节点删除76链表动态增长或缩小77大数乘法78精确乘幂80火车站81操场训练82HAILSTONE84阶乘合计85王的对抗86三点顺序87公园喷水器88勇闯天涯89不屈的小蜗90THE RATIO OF G
3、AINERS TO LOSERS91GRAVEYARD92ARITHMETIC PROGRESSIONS93SCORING94HOUSEBOAT97BEE98CHECKSUM ALGORITHM99Hanoi 2100Specialized number1计算A+B#includeint main() int a,b,sum; scanf(%d %d,&a,&b); sum=a+b; printf(%d,sum);2圆及圆球等的相关计算#includeint main() float r,h,l,s,sq,vq,vz,pi=3.141592653; scanf(%f %f,&r,&h); l=
4、2*pi*r; s=pi*r*r; sq=4*pi*r*r; vq=4.0/3*pi*r*r*r; vz=pi*r*r*h; printf(%.2fn%.2fn%.2fn%.2fn%.2fn,l,s,sq,vq,vz); return 0;3计算成绩#include int main() float a,b,c,sum,ave; scanf(%f %f %f,&a,&b,&c); sum=a+b+c; ave=sum/3.0; printf(%.6fn%.6f,sum,ave); return 0;4找最大数#includeint main() int a,b,c,t; scanf(%d %d
5、 %d,&a,&b,&c); if (ab) t=a,a=b; if(ac) t=a,a=c; printf(%d,a); return 0;5找幸运数#include int main() int i,j,a; scanf(%d,&a); i=0; j=a; while(j) i=10*i+(j%10); j=j/10; if(i=a) printf(yesn); else printf(non); return 0;6奖金发放#includeint main () float l; scanf(%f,&l); if (l=10)l=l*0.1; else if(l=20)l=10*0.1+
6、(l-10)*0.075; else if(l=40)l=10*0.1+10*0.075+(l-20)*0.05; else if(l=60)l=10*0.1+10*0.075+20*0.05+(l-40)*0.03; else if(l=100)l=10*0.1+10*0.075+20*0.05+20*0.03+(l-60)*0.015; else l=10*0.1+10*0.075+20*0.05+20*0.03+40*0.015+(l-100)*0.01; printf(%.6f,l); return 0;7出租车费#include#includeint main() float a,n
7、,t; scanf(%f,&a); if (a=2) n=7; else if (a=15) t=a-floor(a); if(t=0)n=7+(floor(a)-2)*1.5; else n=7+(floor(a)-1)*1.5; else t=a-floor(a); if(t=0) n=7+13*1.5+(floor(a)-15)*2.1; else n=7+13*1.5+(floor(a)-14)*2.1; printf(%.6f,n); return 0;8是该年的第几天#includeint main() int y,m,d,n,a; scanf(%d-%d-%d,&y,&m,&d)
8、; if(y%4=0&y%100!=0)|(y%400=0) a=29; else a=28; switch(m) case 1:n=d;break; case 2:n=31+d;break; case 3:n=31+a+d;break; case 4:n=62+a+d;break; case 5:n=92+a+d;break; case 6:n=123+a+d;break; case 7:n=153+a+d;break; case 8:n=184+a+d;break; case 9:n=215+a+d;break; case 10:n=245+a+d;break; case 11:n=276
9、+a+d;break; case 12:n=306+a+d;break; printf(%d,n); return 0;9成绩转换#includeint main() int n; scanf(%d,&n); if(n60)printf(En); else if(n70)printf(Dn); else if(n80)printf(Cn); else if(n90)printf(Bn); else printf(An); return 0;10求建筑高度#includeint main() float x,y,a,b,c,d; scanf(%f,%f,&x,&y); a=(x-2)*(x-2)
10、+(y-2)*(y-2); b=(x-2)*(x-2)+(y+2)*(y+2); c=(x+2)*(x+2)+(y-2)*(y-2); d=(x+2)*(x+2)+(y+2)*(y+2); if(a=1|b=1|c=1|d=1)printf(10); else printf(0); return 0;11区间内素数#include#includeint main() int i,n=500,cnt=0,sum=0; while(n=800) for (i=2;i=n-1;i+) if (n%i=0)break; if (i=n)cnt=cnt+1,sum=sum+pow(-1),cnt)*n;
11、 n=n+1; printf(%d %d,cnt,sum); return 0;12计算#include#includeint main() int s=1; double pi=0,n=1,t=1; while (fabs(t)1e-6) pi=pi+t,n=n+2,s=-s,t=s/n; pi=pi*4; printf(%.6f,pi); return 0;13两个整数之间所有的素数#includeint main() int a,b,t,i; scanf(%d%d,&a,&b); if(ab)t=a,a=b,b=t; while (a=b) for (i=2;i=a-1;i+) if (
12、a%i=0)break; if(i=a)printf(%d ,a); a+; return 0;14最次方数#includeint main() int x,a,m=1,n=1; scanf(%d %d,&x,&a); while (m=a) n=n*x; n=n%1000; m=m+1; printf(%d,n); return 0;15自然数立方的乐趣#includeint main() int n,a,i,t; scanf(%d,&n); a=n*(n-1)+1; t=n*n*n; printf(%d*%d*%d=%d=,n,n,n,t); for(i=1;in;i+) printf(%
13、d+,a); a=a+2; printf(%d,a); return 0;16五猴分桃#includeint divides(int n,int m) if (n/5=0|n%5!=1)return 0; if (m=1)return 1; return divides(n-n/5-1,m-1);int main() int n,a; for (n=1;n+) if(divides(n,5) printf(%d ,n);break; a=(n-1)*4/5-1)*4/5-1)*4/5-1)*4/5-1)*4/5; printf(%d,a); return 0;17完全数#includeint
14、main() int i,n,sum=0; for(n=2;n1000;n+) sum=0; for (i=1;i=n/2;i+) if(n%i=0)sum=sum+i; if(sum=n)printf(%d=,n); for(i=1;in/2;i+) if(n%i=0)printf(%d+,i); i=n/2; printf(%dn,i); return 0;18二分求根#include#includedouble fun(double x) return 2*x*x*x-4*x*x+3*x-6;double root(double a,double b,double e) double x
15、1,x2,y1,x,y; x1=a; x2=b; do x=(x1 + x2)/2; y=fun(x); y1=fun(x1); if(y0&y10&y10) x1=x; else x2=x; /*end if*/ while(fabs(y) e); return x;int main(void) double m,n; scanf(%f %f,&m,&n); double x=root(m,n,1e-8); printf(%.2fn,x); return 0;19你会存钱吗?#include#includeint main()int i8,i5,i3,i2,i1,n8,n5,n3,n2,n1
16、;float max=0,term;for(i8=0;i83;i8+) /*穷举所有可能的存款方式*/for(i5=0;i5=(20-8*i8)/5;i5+)for(i3=0;i3=(20-8*i8-5*i5)/3;i3+)for(i2=0;i2max) max=term;n1=i1;n2=i2;n3=i3;n5=i5;n8=i8; printf(%d ,n8);printf(%d ,n5);printf(%d ,n3);printf(%d ,n2);printf(%dn,n1);printf(%.2f,max);/*输出存款方式*/20级数和#include#includeint main(
17、) int j,t,i,a,n; double s=0; scanf(%d,&n); j=-1; i=1; t=1; for (a=0;an;a+) t=t*2; j*=-1; i*=-1; s=s+j*t/(t+i)*(2*t+j)+0.0); printf(%.6lfn,s); return 0;21幸运数字7#includeint main() int n,i; scanf(%d,&n);/n不大于30000 if(n7); else for (i=7;i=n;i+) if(i%7=0|i%10=7|i/1000%10=7|i/100%10=7|i/10%10=7) printf(%d
18、,i); return 0;22粒子裂变#includeint main() int n100,m100,t,i; n0=1; m0=0; scanf(%d,&t); for(i=1;i=t;i+) ni=mi-1; mi=3*ni-1+2*mi-1; printf(%d %d,nt,mt); return 0;23特殊整数#include#include #includeint main() int m,n,g=0,s=0,i,j,x,x1,x2; scanf(%d %d,&m,&n); x1=(int)(pow(10.0,n)/10); x2=(int)(pow(10.0,n)-1); f
19、or(i=x1;i=x2;i+) j=i; do x=j%10; if(x=m) if(i%m!=0) g+,s=s+i;break; else j=j/10; while(j!=0); printf(%d %dn,g,s); return 0;24最大乘积#includeint main() int A18,i,j,n,x,y=0; scanf(%d,&n); for(i=0;in;i+) scanf(%d,&Ai); for(i=0;in;i+) x=1; for(j=i;jy) y=x; if(y0)printf(%d,y); else printf(-1); return 0;25解不
20、等式#includeint main() int a,b; float n,s=0,sum=0; scanf(%d %d,&a,&b); for (n=1;sum=a;n+) s=s+1/n; sum=sum+1/s; printf(%.0f ,n=n-1); for (n;sum=b;n+) s=s+1/n; sum=sum+1/s; printf(%.0f,n=n-1); return 0;26危险的组合#include#includeint main() int n; int f(int); scanf(%d,&n); printf(%d,f(n); return 0;int f(int
21、 n) int a; if(n=1|n=2) a=0; else if(n=3) a=1; else if(n=4) a=3; else a=f(n-1)*2+pow(2,n-4)-f(n-4); return a;27子序列的和#include#includeint main() int m,n,i; /nm1000000 double a,sum=0; scanf(%d %d,&n,&m); for (i=n;i=m;i+) a=pow(i,2.0); sum=sum+1/a; printf(%.5lf,sum); return 0;29探索合数世纪#includeint main() i
22、nt n,i=500,s,x,count=0; long j,k; scanf(%d,&n); while(countn) s=0; for(j=i*100-99;ji*100;j+=2) x=0; for(k=3;k*k=j;k+=2) if(j%k=0) x=1; break; s+=x; if(s=50) count+; i+; printf(%d %d,j-101,j-2); return 0;30韩信点兵includeint main() int a,b,c,n;/a3,b5,c7 scanf(%d %d %d,&a,&b,&c); for (n=10;n100)printf(-1)
23、; else printf(%d ,n); return 0;31亲和数#includeint fun(int a) int b=0,i; for(i=1;i=a/2;i+) if(a%i=0) b+=i; return b;int main() int a,b; scanf(%d %d,&a,&b); if(fun(a)=b&fun(b)=a) printf(YES); else printf(NO); return 0;32高低交换#includeinline int xchg(unsigned char n) char left=n4; return left+right;int main() int n; scanf(%d,&n); n=xchg(n); printf(%d,n); return 0;33循环移位#includeint move(int value,int n) if(n=0) return value; else if(n0) n=-n; value=(value(32-n); else value=(valuen)|(value(32-n); return value;int main() int value,n; scanf
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1