CC语言课程设计_cc程序设计课程设计
CC语言课程设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“cc程序设计课程设计”。
1,/*100-999内的水仙花数的个数*/ #include main(){
int a,b,c,d,s,i=0;
for(a=100;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(){ int x,y,z,t=0,a,s;for(x=-55;x
for(y=-55;y
for(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(){
int a,b,c,d,s,i=0;
for(a=100;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(){
int a,b,c,d,e,i=0;
for(a=0;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(){
int a,b,c ,t=0;
float x,y,z;
for(a=1;a
{ for(b=1;b
for(c=1;c
x=1/(a*a);
y=1/(b*b);
z=1/(c*c);
if(x+y==z&&a+b+c130&&a>b&&a>c&&b>c)
t++;
}
printf(“%d”,t);
getch();
} 6, /*爱因斯坦走台阶 */ #include main(){
int s;
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(){
int a=0,b=0,c=121 ,i=0;
for(c=121;c
{
for(a=0;a
for(b=0;b
if(c*c==a*a+b*b)
i++;
continue;
printf(“%d”,i);
}
getch();} 8/*1000内其十位数是6能被8整除数的个数*/ #include main(){
int a,i=0;
for(a=10;a
{
if(a%100/10==6&&a%8==0)
i++;
}
printf(“%d”,i);
getch();
}
9/* 0-60内每位数的乘积大于和的数个数*/
#include main(){
int a,b,c,d,e,i=0;
for(a=0;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(){
int a, b=0;
for(a=2;a
{
if(a%5==0)
b=b+a;
while(b>500);
printf(“%d”,b);
}
getch();
}
11./* 100-500内能被3整除余2和能被5整除余3的个数*/ #include main(){
int a, b=0;
for(a=100;a
{
if(a%3==2&&a%5==3)
b++;
}
printf(“%d”,b);
getch();
} 12/* 1-7000内能被3或者能被7整除的个数*/ #include main(){
int a, b=0;
for(a=1;a
{
if(a%3==0||a%7==0)
b++;
}
printf(“%d”,b);
getch();
} 13./*3-100内非偶数非素数之和*/ #include main(){
int a,i,k, b=0;
for(a=3;a
{
k=sqrt(a);
for(i=2;i
{if(a%i==0)break;
if(i>k+1)
b=b+a;}
}
printf(“%d”,b);
getch();
}
14/*求满足ijk+kji=1534,且i
#include main(){
int j,i,k, b=0;
for(j=0;j
for(k=0;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(){
int j,i,k,a, b=0;
for(j=1000;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(){
int j,i,k,a,s, b=0;for(j=100;j
{
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(){
int j,i,k,a,c,s, b=0;for(j=1111;j
{
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(){
int j,i,k,a,c,s, b=0;for(j=1;j
{
if(j%17==0||j%23==0)
b++;
}
printf(“%d”,b);
getch();
}
19/*四位数的偶数中,所有各位数字之和是30的倍数的数的和
*/
#include main(){
int j,i,k,a,c,s, b=0;for(j=1000;j
{
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(){
int a,b,c ,d,s,x,y,t=0;
for(s=1000;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(){
int j ,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(){
int j ,s=0;for(j=2;;j=2*j)
{
s+=j;
if(s>1500)break;
}
s=s-j;
printf(“%d”,s);
getch();
}/*m的值为50时,计算下列公式的值T=1-1/2-1/3-1/4-…-1/m*/
#include main(){
float n,m,s,T;
s=0;
for(n=2;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(){
float s,T;
int m=1,n=1;
s=0;
for(n=1;n
m=m*n;
s=s+1/m;
}
T=1+s;
printf(“%0.4f”,T);
getch();
} 27/*斐波那契数列,10000000以内最大的斐波那契数*/ #include main(){ long int f1,f2 ,n;f1=1;f2=1;
do
{
f1=f1+f2;
f2=f1+f2;
}while(f1>10000000);
printf(“%ldn%ld”,f1,f2);
getch();
} 28/*计算y=1+2/3+3/5+4/7+.....+n/(2*n-1)的值,n=50*/ #include main(){ float y=0,m,s;int t,n;for(n=1;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(){
float y=0,m,s,x;int t,n;
for(n=1;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(){
int n,m,i,j,k,x=0;for(n=2;n
i=m-1;
k=sqrt(i);
for(j=3;j
if(i%k==0)break;if(j>=k+1)x++;
}
printf(“%d”,x);
getch();
}
31/*两位数分子分母各个数之和的比等于原来的值*/
#include
main(){
int n,m,a,b,c,d,s;float x,y;for(n=10;n
{ 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(){
int x,y,z,n=0,t;
for(x=1;x
{
for(y=1;y
for(z=1;z
if(x+y>z&&x*x+y*y==z*z)
n++;}
t=n/3;
printf(“%d ”,t);
getch();
} 33/*一正整数递减,每次减半后减一,10次后剩一 */ #include
main(){
int n, s=0,m=1;
for(n=2;n
{
m= 2*(m+1);
}
printf(“%dn”,m);
getch();
}
34./* 2/1,3/2,5/3,.....前50项和*/ #include
main(){
int x1=1,x2=2, n;float t,s=0;
for(n=1;n
{ t=x2/x1;
s+=t;
x2=x1+x2;
x1=x2;
}
printf(“%.2f ”,s);
getch();
}
35,/*求五位数各个位数平方和为100的最大五位数*/
#include
main(){
int x,a,b,c,d,e,m,n,max;
for(x=10000;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
{
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(){
long int y,k;
int x,i=0;
for(x=2;x
{ y=x*x;
k=y-x;
if(x
i=i+x;
if(x>=10&&x
i=i+x;
if(x>=100&&x
i=i+x;
if(x==1000&&k%10000)
i=i+x;
}
printf(“%d”,i);
getch();} 37/*求50-150之间的友对数*/
#include main(){ int x,y,z, i,t=0;for(x=50;x
y=x+1;
z=x*y-1;
for(i=2;x
{
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(){
int i,j=2,n;
long int a[]={0,1,1};
for(n=3;;n++)
{ a[n]=(n-1)*a[n-1]+(n-2)*a[n-2];
for(i=1;i
{
if(a[n]==i)
{j++;break;}
if(a[n]>=30000)
break;
}
if(a[n]>=30000)
break;
}
printf(“%d”,j);
getch();}
39./*试求所有两位绝对素数的和,绝对素数是交换位子后仍为素数*/
#include main(){
int i,j,a,b,x,k,s=0;
for(i=11;i
for(j=2;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
{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(){
long int a[50]={1,1,0},max;
int i;
for(i=3;i
{ max=a[1];
a[i]=a[i-1]-2*a[i-2]+a[i-3];
if(max
max=a[i];
else
max=max;
}
printf(“%ld”,max);
getch();} 41,/*f(n)=f(n-1)+2*f(n-2)-5*f(n-3),f(0)=1,f(1)=2,f(2)=3,求f(0)+f(1)+…f(30)*/
#include main(){
long int a[31]={1,2,3},s=a[0]+a[1]+a[2];
int i;
for(i=3;i
{
a[i]=a[i-1]+2*a[i-2]-5*a[i-3];
s=s+a[i];
}
printf(“%ld”,s);
getch();}
42./*A1=1, A2=1/(1+A1), A3=1/(1+A2), A4=1/(1+A3), ……, 求A50*/
#include main(){
float a[51]={0,1};
int i;
for(i=2;i
{
a[i]=1.0/(1+a[i-1]);
}
printf(“%.3f”,a[50]);
getch();}
43./*A,B为正整数, A
#include main(){
int A,B,d,min=2699;
long int c;
for(B=2;B
for(A=1;A
{c=A*B;
if(c==2698)
{ d=A+B;
if(min>d)
min=d;}
}
for(B=2;;B++)
{for(A=1;A
{min=A+B;
c=A*B;
if(c==2698)
break;}
if(c==2698)
break;}
printf(“%d”,B);
getch();} 44/*A main(){
int A,B,d,min=2699;
long int c;
for(B=2;B
for(A=1;A
{c=A*B;
if(c==2698)
{ d=A+B;
if(min>d)
min=d;}
}
printf(“%d”,min);
getch();} 45/*的自然数对中B之和求所有小于或等于100*/
#include main(){
int a,b,A,B,j,i,s=0;
for(A=1;A
for(B=1;B
{ a=A+B;
b=A-B;
for(i=1;i
if(a==i*i)
{for(j=1;j
if(b==j*j)
s=s+B;}
}
printf(“%d”,s);
getch();}
46./*问大、中、小学生的人数分配共有多少种不同的解*/
#include main(){
int i,j,k,s,y=0;
for(i=1;i
for(j=1;j
for(k=1;k
{s=4*i+3*j+2*k;
if(s==120)
y++;
}
printf(“%d”,y);
getch();}