CC语言课程设计.docx
- 文档编号:4246080
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:26
- 大小:18.93KB
CC语言课程设计.docx
《CC语言课程设计.docx》由会员分享,可在线阅读,更多相关《CC语言课程设计.docx(26页珍藏版)》请在冰豆网上搜索。
CC语言课程设计
1,/*100-999内的水仙花数的个数*/
#include
main()
{
inta,b,c,d,s,i=0;
for(a=100;a<=999;a++)
{
b=a/100;
c=a%100/10;
d=a%10;
s=b*b*b+c*c*c+d*d*d;
if(a==s)
i++;
}
printf("%d",i);
getch();
}
2,/*x^2+y^2+z^2=55^2,则(x,y,z)称为方程的整数解的个数*/
#include
main()
{
intx,y,z,t=0,a,s;
for(x=-55;x<=55;x++)
for(y=-55;y<=55;y++)
for(z=-55;z<=55;z++)
{
a=x*x+y*y+z*z;
s=55*55;
if(a==s&&x>y&&x>z&&x>y)
t++;
}
printf("%d",t);
getch();
}
3/*100-400内的水仙花数的个数*/
#include
main()
{
inta,b,c,d,s,i=0;
for(a=100;a<=400;a++)
{
b=a/100;
c=a%100/10;
d=a%10;
s=b*b*b+c*c*c+d*d*d;
if(a==s)
i++;
}
printf("%d",i);
getch();
}
4,/*0-60内每位数的乘积大于和的数个数*/
#include
main()
{
inta,b,c,d,e,i=0;
for(a=0;a<=6;a++)
{
b=a/10;c=a%10;
d=a*b;e=a+b;
if(d==e)
i++;
}
printf("%d",i);
getch();
}
5/*满足1/A^2+1/B^2=1/C^2关系时,称为倒勾股数*/
#include
main()
{
inta,b,c,t=0;
floatx,y,z;
for(a=1;a<=100;a++)
{for(b=1;b<=100;b++)
for(c=1;c<=100;c++)
x=1/(a*a);
y=1/(b*b);
z=1/(c*c);
if(x+y==z&&a+b+c<150&&a+b+c>130&&a>b&&a>c&&b>c)
t++;
}
printf("%d",t);
getch();
}
6,/*爱因斯坦走台阶*/
#include
main()
{
ints;
for(s=0;;s++)
{
if(s%2==1&&s%3==2&&s/4==3&&s/5==4&&s/6==5&&s%7==0)break;
}
printf("%d",s);
getch();
}
7./*121-140内弦数的个数*/
#include
main()
{
inta=0,b=0,c=121,i=0;
for(c=121;c<=140;a++)
{
for(a=0;a<=15;a++)
for(b=0;b<=15;b++)
if(c*c==a*a+b*b)
i++;
continue;
printf("%d",i);
}
getch();
}
8/*1000内其十位数是6能被8整除数的个数*/
#include
main()
{
inta,i=0;
for(a=10;a<=1000;a++)
{
if(a%100/10==6&&a%8==0)
i++;
}
printf("%d",i);
getch();
}
9/*0-60内每位数的乘积大于和的数个数*/
#include
main()
{
inta,b,c,d,e,i=0;
for(a=0;a<=60;a++)
{
b=a/10;c=a%10;
d=c*b;e=c+b;
if(d>e)
i++;
}
printf("%d",i);
getch();
}
10./*1-5000内能被5整除偶数之和大于500和的值*/
#include
main()
{
inta,b=0;
for(a=2;a<=5000;a+=2)
{
if(a%5==0)
b=b+a;
while(b>500);
printf("%d",b);
}
getch();
}
11./*100-500内能被3整除余2和能被5整除余3的个数*/
#include
main()
{
inta,b=0;
for(a=100;a<=500;a++)
{
if(a%3==2&&a%5==3)
b++;
}
printf("%d",b);
getch();
}
12/*1-7000内能被3或者能被7整除的个数*/
#include
main()
{
inta,b=0;
for(a=1;a<=7000;a++)
{
if(a%3==0||a%7==0)
b++;
}
printf("%d",b);
getch();
}
13./*3-100内非偶数非素数之和*/
#include
main()
{
inta,i,k,b=0;
for(a=3;a<=100;a+=2)
{
k=sqrt(a);
for(i=2;i<=k;i++)
{if(a%i==0)break;
if(i>k+1)
b=b+a;}
}
printf("%d",b);
getch();
}
14/*求满足ijk+kji=1534,且i #include main() { intj,i,k,b=0; for(j=0;j<=9;j++) for(k=0;k<=9;k++) for(i=0;i if(100*i+10*j+k+100*k+10*j+i==1534) b++; printf("%d",b); getch(); } 15/*有四位数ABCD的个数,该四位数是11的倍数,且A=B+C,即第2位数加上第3位数等于第1位数。 4*/ #include main() { intj,i,k,a,b=0; for(j=1000;j<=9999;j++) { i=j/1000; k=j%1000/100; a=j%100/10; if(j%11==0&&i==k+a) b++; } printf("%d",b); getch(); } 16/*求三位数的偶数中,所有各位数字之和是15的倍数的数的个数*/ #include main() { intj,i,k,a,s,b=0; for(j=100;j<=999;j+=2) { i=j/100; k=j%100/10; a=j%10; s=i+k+a; if(s%15==0) b++; } printf("%d",b); getch(); } 17/*四位数的奇数中,所有各位数字之积是125的倍数的数的和*/ #include main() { intj,i,k,a,c,s,b=0; for(j=1111;j<=9999;j+=2) { i=j/1000; k=j%1000/100; a=j%100/10; c=j%10; s=i*k*a*c; if(s%125==0) b=b+j; } printf("%d",b); getch(); } 18/*5000以内能被17或者23整除的正整数的个数*/ #include main() { intj,i,k,a,c,s,b=0; for(j=1;j<=5000;j++) { if(j%17==0||j%23==0) b++; } printf("%d",b); getch(); } 19/*四位数的偶数中,所有各位数字之和是30的倍数的数的和*/ #include main() { intj,i,k,a,c,s,b=0; for(j=1000;j<=9999;j+=2) { i=j/1000; k=j%1000/100; a=j%100/10; c=j/10; s=i+k+a+c; if(s%30==0) b=b+j; } printf("%d",b); getch(); } 21/*统计1000~9999之间的所有满足以下条件的四位数的个数。 该数是一个完全平方数*/ #include #include main() { inta,b,c,d,s,x,y,t=0; for(s=1000;s<=9999;s++) { a=s/1000; b=s%1000/100; c=s%100/10; d=s%10; x=sqrt(s); y=x*x; if(a+b==12&&c*d==24&&y==s) t++; } printf("%d",t); getch(); } 22/*S=1+3+5+7+9+…,求S不大于9000的最大值*/ #include main() { intj,s=0; for(j=1;;j+=2) { s+=j; if(s>9000)break; } s=s-j; printf("%d",s); getch(); } 23/*S=2+4+8+16+32+…,求S不大于1500的最大值*/ #include main() { intj,s=0; for(j=2;;j=2*j) { s+=j; if(s>1500)break; } s=s-j; printf("%d",s); getch(); } 25/*m的值为50时,计算下列公式的值T=1-1/2-1/3-1/4-…-1/m*/ #include main() { floatn,m,s,T; s=0; for(n=2;n<=50;n++) { m=-1/n; s=s+m; } T=1+s; printf("%0.4f",T); getch(); } 26,/*当n的值为25时,计算下列公式的值: s=1+1/1! +1/2! +1/3! +…+1/n*/ #include main() { floats,T; intm=1,n=1; s=0; for(n=1;n<=25;n++) { m=m*n; s=s+1/m; } T=1+s; printf("%0.4f",T); getch(); } 27/*斐波那契数列,10000000以内最大的斐波那契数*/ #include main() { longintf1,f2,n; f1=1;f2=1; do { f1=f1+f2; f2=f1+f2; }while(f1>10000000); printf("%ld\n%ld",f1,f2); getch(); } 28/*计算y=1+2/3+3/5+4/7+.....+n/(2*n-1)的值,n=50*/ #include main() { floaty=0,m,s; intt,n; for(n=1;n<=50;n++) { t=2*n-1; m=1.0/t; s=m*n; y+=s; } printf("%.2f",y); getch(); } 29/*计算y=x/1! -x^3/3! +x^5/5! -x^7/7! ...前20项的值x=2*/ #include main() { floaty=0,m,s,x; intt,n; for(n=1;n<=20;n++) {x=-4*x; m=2*n+1; t=t*m*(m-1); s+=x/t; } printf("%.2f",y); getch(); } 30/*梅森尼数2^n-1是素数,【2-21】内的梅森尼数个数*/ #include #include main() { intn,m,i,j,k,x=0; for(n=2;n<=21;n++) {m=2*m; i=m-1; k=sqrt(i); for(j=3;j<=k;j++) if(i%k==0)break; if(j>=k+1) x++;} printf("%d",x); getch(); } 31/*两位数分子分母各个数之和的比等于原来的值*/ #include main() { intn,m,a,b,c,d,s; floatx,y; for(n=10;n<=98;n++) for(m=11;m<=99;m++) {a=n/10; b=n%10; c=m/10; d=m%10; x=n/m; y=(a+b)/(c+d); if(m>n&&x==y) s+=a+b+c+d; } printf("%d",s); getch(); } 32/*1-50内构成直角三角形的组数*/ #include main() { intx,y,z,n=0,t; for(x=1;x<=50;x++) { for(y=1;y<=50;y++) for(z=1;z<=50;z++) if(x+y>z&&x*x+y*y==z*z) n++;} t=n/3; printf("%d",t); getch(); } 33/*一正整数递减,每次减半后减一,10次后剩一*/ #include main() { intn,s=0,m=1; for(n=2;n<=10;n++) { m=2*(m+1); } printf("%d\n",m); getch(); } 34./*2/1,3/2,5/3,.....前50项和*/ #include main() { intx1=1,x2=2,n; floatt,s=0; for(n=1;n<=50;n++) {t=x2/x1; s+=t; x2=x1+x2; x1=x2; } printf("%.2f",s); getch(); } 35,/*求五位数各个位数平方和为100的最大五位数*/ #include main() { intx,a,b,c,d,e,m,n,max; for(x=10000;x<=99999;x++) { a=x/10000; b=x%10000/1000; c=x%1000/100; d=x%100/10; e=x%10; m=a*a+b*b+c*c+d*d+e*e; if(m==100)break; max=x;} for(n=x;n<=99999;n++) { a=n/10000; b=n%10000/1000; c=n%1000/100; d=n%100/10; e=n%10; m=a*a+b*b+c*c+d*d+e*e; if(m==100) max=n; } printf("%ld",max); getch(); } 36,#include main() { longinty,k; intx,i=0; for(x=2;x<=1000;x++) {y=x*x; k=y-x; if(x<10&&k%10==0) i=i+x; if(x>=10&&x<=99&&k%100==0) i=i+x; if(x>=100&&x<=999&&k%1000==0) i=i+x; if(x==1000&&k%10000) i=i+x; } printf("%d",i); getch(); } 37/*求50-150之间的友对数*/ #include main() { intx,y,z,i,t=0; for(x=50;x<=150;x++) { y=x+1; z=x*y-1; for(i=2;x<=z-1;i++) { if(z%i==0)break; if(z%i! =0) { if(i==z-1) t++;} } } printf("%d",t); getch(); } 38/*求[1,30000]之内E数的个数,E (1)=E (2)=1;E(n)=(n-1)*E(n-1)+(n-2)*E(n-2)*/ #include main() { inti,j=2,n; longinta[]={0,1,1}; for(n=3;;n++) {a[n]=(n-1)*a[n-1]+(n-2)*a[n-2]; for(i=1;i<=30000;i++) { if(a[n]==i) {j++;break;} if(a[n]>=30000) break; } if(a[n]>=30000) break; } printf("%d",j); getch(); } 39./*试求所有两位绝对素数的和,绝对素数是交换位子后仍为素数*/ #include main() { inti,j,a,b,x,k,s=0; for(i=11;i<=99;i+=2) for(j=2;j<=i-1;j++) {if(i%j==0) break; if(i%j! =0) {if(j==i-1) {a=i/10; b=i%10; x=10*b+a; for(k=2;k<=x-1;k++) {if(x%k==0) break; if(x%k! =0) {if(k==x-1) s=s+i;}} } } } printf("%d",s); getch(); } 40./*f(0)=f (1)=1,f (2)=0f(n)=f(n-1)-2*f(n-2)+f(n-3),(n>2)求f(0)到f(50)中的最大值*/ #include main() { longinta[50]={1,1,0},max; inti; for(i=3;i<=50;i++) {max=a[1]; a[i]=a[i-1]-2*a[i-2]+a[i-3];
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CC 语言 课程设计