c语言课程设计报告 下载本文

for (d=1;d<=9;d++)

for (e=1;e<=9;e++)

if(a!=b&&a!=c&&a!=d&&a!=e&&b!=c&&b!=d&&b!=e&&c!=d&&c!=e&&d!=e&&((a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e))) }

算法实现:

n++;

printf(\

10.高斯日记

大数学家高斯有个好习惯:无论如何都要记日记。

他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢? 高斯出生于:1777年4月30日。

在高斯发现的一个重要定理的日记上标注着:5343,因此可算出那天是:1791年12月15日。

高斯获得博士学位的那天日记上标着:8113

请你算出高斯获得博士学位的年月日。 算法分析:

11

#include \main() { int x=1777,y=4,z=30,i,j,a,b,c,d,n,o; scanf(\

a=n/1461;b=n61;c=b/365;d=b65; x+=a*4;

for(j=0;j

if (x%4==0&&x0!=0||x@0==0)

d-=1;

} z+=d;

o=(x-1777)/100;z-=o; z-=1;

for (i=1;i<=12;i++) { if ((y==1||y==3||y==5||y==7||y==8||y==10||y==12)&&z>=31) {y+=1;z-=31;}

if ((y==4||y==6||y==9||y==11)&&z>=30) {y+=1;z-=30;}

if (y==2&&(x%4==0&&x0!=0||x@0==0)&&z>=29) {y+=1;z-=29;}

if (y==2&&(x%4!=0||x0==0)&&z>=28) {y+=1;z-=28;} }

printf(\年%d月%d日\\n\

}

算法实现:

12

11.第39级台阶

小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!

站在台阶前,他突然又想着一个问题:

如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?

请你利用计算机的优势,帮助小明寻找答案。 算法分析:

#include int count=0;

void fun(int stair,int step)

{ //stari用于表示剩余的楼梯的层数,当等于0时停止递归 //step是走过的步数,用来判断是否是偶数,是否符合要求 if(stair<0)return;

if(stair==0) //39节楼梯全部走完 {

if(step%2 == 0)count++; return; }

fun(stair-1,step+1); //这一步走了一个台阶 fun(stair-2,step+1); //这一步走了两个台阶 }

int main()

13

{

fun(39,0);

printf(\ return 0; }

算法实现:

14