算法----C语言
这个博客,将会记录我学算法和数据结构的过程。如果你和我一样,也想学算法和数据结构,那就在下面组个队吧,一起努力哦!!!
1、斐波那契数列
斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597…这个数列从第3项开始,每一项都等于前两项之和。
- 输出指定数量的斐波那契数列
#include<stdio.h>
//输出指定数量的斐波那契数列
int main()
{
int input= 0;
int one=0,two=1,nextnum=0;
scanf("%d",&input);
for(int i=0;i<input;i++){
printf("%d,",one);
nextnum = one+two;
one=two;
two =nextnum;
}
return 0;
}
输出结果:
- 输出指定数字前的斐波那契数列
#include<stdio.h>
int main()
{
int input= 0;
int one=0,two=1,nextnum;
printf("输入一个正整数:") ;
scanf("%d",&input);
nextnum = one +two;
while(nextnum <=input){
printf("%d,",nextnum);
one=two;
two =nextnum;
nextnum = one+two;
}
return 0;
}
输出结果
2、九九乘法表
#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=9;i++){
for(j=1;j<=i;j++){
printf("%d*%d=%d\t",i,j,i*j);
}
printf("\n");
}
return 0;
}
输出结果
3、最大公约数和最小公倍数
#include<stdio.h>
int main()
{
//gys:最大公约数,gbs:最小公倍数
int one,two,gys,gbs;
printf("请输入两个数: ");
scanf("%d %d",&one,&two);
for(int i=1;i<=one&&i<=two;i++){
if(one%i==0&two%i==0){
gys=i;
}
}
gbs=(one*two)/gys;
printf("%d %d",gys,gbs);
return 0;
}
输出结果