#include<stdio.h>
int fl ( int n ) // 递归求斐波那契数列
{
if ( n == 1 || n == 2 )
return 1 ;
else
return fl ( n - 1 ) + fl ( n - 2 ) ;
}
void bubble_sort( int arr[],int n ) //冒泡函数倒叙
{
for ( int i = 0 ; i < n - 1 ; i ++ )
{
int flag = 1 ;
for ( int j = 0 ; j < n - 1 - i ; j ++ )
{
if( arr [ j ] <= arr [ j + 1 ] )
{
int tmp = arr [ j ] ;
arr [ j ] = arr [ j + 1 ] ;
arr [ j + 1 ] = tmp ;
flag = 0;
}
}
if ( flag == 1)
break ;
}
}
int main ( )
{
int n ;
scanf ( "%d", &n ) ;
int arr [ n - 1 ] ;
if ( n >= 1 && n <= 40 )
{
for ( int i = 0 ; i < n ; i ++ )
{
arr [ i ] = fl ( i + 1) ;
}
bubble_sort( arr, n ) ;
for ( int l = 0 ; l < n ; l ++ )
{
if ( (l+1) % 10 == 0 )
printf("%9d\n",arr[l]);
else if ( l == n - 1 )
printf("%9d",arr[l]);
else
printf("%9d,",arr[l]);
}
}
else
printf("error input");
return 0 ;
}
斐波数列定义如下:a(1)=1,a(2)=1,当i>=3, a(i) = a(i-1) + a(i-2).
输入一个正整数 n (1 =< n <= 40), 逆序输出斐波数列的前n个元素。
输出格式:
每行输出10个数,其中行末的数按"%9d\n"的格式输出;
最后一个数按"%9d"的格式输出;
其他数按照"%9d,"的格式输出.
输入
正整数 n (1 =< n <= 40)
输出
按照指定格式逆序输出斐波数列的前n个元素,如果1 =< n <= 40;否则,输出"error input"
样例输入
12
样例输出
144, 89, 55, 34, 21, 13, 8, 5, 3, 2 1, 1
全网最帅解法!