-----------------------------選擇排序
#include<stdio.h>
int main()
{
int Ary[]={3,7,1,6,8};
int min,n=5; /*最小值、元素個數*/
for (int i =0;i<n-1;i++) /*比較第幾回合*/
{
min=i; /*第1回合設定第1個元素為最小*/
for (int j=i+1;j<n;j++) /*第1回合從第2個元素才開始比*/
{
if (Ary[j]<Ary[min])
{
min=j;
}
}
int tmp=Ary[i];
Ary[i]=Ary[min];
Ary[min]=tmp;
}
for(int i=0;i<n;i++)
{
printf("%d ",Ary[i]);
}
}
-----------------------------氣泡排序 小->大
#include<stdio.h>
int main()
{
int a[5]={9,8,6,4,3};
int n=5;
for (int i=0;i<=n-1;i++) /*5個元素比4個回合*/
{
for (int j=0;j<n-i-1;j++)
/*第1回j=0~4 因以[j+1]表示 所以j=0~3 第2回j=0~3 第3回j=0~2 第4回j=0~1*/
{
if (a[j]>a[j+1])
{
int max=a[j];
a[j]=a[j+1];
a[j+1]=max;
}
}
}
for (int i=0;i<n;i++)
{
printf("%d ",a[i]);
}
return 0;
}
-----------------------------Factorial
#include<stdio.h>
int fact(int n)
{
int result;
if (n==1)
{
result=1;
}
else
{
result=n*fact(n-1);
}
return result;
}
int main()
{
int x;
scanf("%d",&x);
printf("%d!= %d",x,fact(x));
}
-----------------------------Fibonacci Number
#include<stdio.h>
int Fib(int n)
{
int result;
if (n==0)
{
result=0;
}
else
if(n==1)
{
result=1;
}
else
if(n>=2)
{
return Fib(n-1)+Fib(n-2);
}
return result;
}
int main()
{
int x;
scanf("%d",&x);
printf("%第%d項= %d",x,Fib(x));
}
-----------------------------Great Command Divisor
#include<stdio.h>
int GCD(int a,int b)
{
int c=a%b;
if (c==0)
{
return b;
}
else
{
return GCD(b,c);
}
}
int main()
{
int x,y;
scanf("%d %d",&x,&y);
printf("GCD(%d,%d)= %d",x,y,GCD(x,y));
}
-----------------------------Hanoi Tower
#include <stdio.h>
int cnt=0;
void hanoi(int n, char A, char B, char C)
{
if (n==1)
{
/*³Ì©³ n¡A±qA~C*/
printf("%d ¡G ±N²Ä %d Ó¶ê½L¥Ñ %c ²¾¨ì %c \n",++cnt,n,A,C);
}
else
{
/*²Ä n-1¼h¡A¥ý¥Ñ A~B */
hanoi(n-1,A,C,B);
printf("%d ¡G ±N²Ä %d Ó¶ê½L¥Ñ %c ²¾¨ì %c \n",++cnt,n,A,C);
/*¦A¥Ñ B~C*/
hanoi(n-1,B,A,C);
}
}
int main()
{
int n;
scanf("%d",&n);
hanoi(n,'A','B','C');
printf("²¾°Ê %d ¼h¡A¦@»Ý²¾°Ê %d ¦¸",n,cnt);
}
-----------------------------
-----------------------------
-----------------------------
-----------------------------
-----------------------------
-----------------------------
沒有留言:
張貼留言