1. 求第n个斐波那契数(1 1 2 3 5 8 13 21 34 ...)
//递归法:
#include <stdio.h>
int Fib(int n)
{
if (n <= 2)
return 1; else
return Fib(n - 1) + Fib(n - 2);
}
int main()
{
int n = 0;
scanf("%d", &n);
int ret = Fib(n);
printf("%d\n", ret);
return 0;
}
//循环(迭代法):
#include <stdio.h>
int Fib(int n)
{
int a = 1;
int b = 1;
int c = 1;
while (n >= 3)
{
c = a + b;
a = b;
b = c;
n--;
}
return c;
}
int main()
{
int n = 0;
scanf("%d", &n);
int ret = Fib(n);
printf("%d\n", ret);
return 0;
}
2. 输入三个整数,依次从大到小排列输出
#include <stdio.h>
void swap(int* x,int* y)
{
int p = *x;
*x = *y;
*y = p;
}
int main()
{
int a = 0;
int b = 0;
int c = 0;
int p = 0;
scanf("%d %d %d", &a, &b, &c);
if (a < b)
{
swap(&a, &b);
}
if (a < c)
{
swap(&a, &c);
}
if (b < c)
{
swap(&b, &c);
}
printf("%d %d %d", a, b, c);
return 0;
}
3. 打印9*9乘法表
#include <stdio.h>
int main()
{
int i = 0;
int j = 0;
int k = 0;
for (i = 1; i <= 9; i++)
{
for (j = 1; j <= i; j++)
{
k = i * j;
printf("%d*%d=%-2d ", i, j, k);
}
printf("\n");
}
return 0;
}