/**
* File Name: array.c
* Author: Haoxuan
* Mail: haovxuan@126.com
* Created Time: 2020年12月17日 星期四 12时43分36秒
**/
#include
#define SIZE 9
/*
* 1、使用数组写出fibonacci数列的前10项,
* 并将该数组实现逆序输出和逆序存放。
*/
void test1()
{
printf( "********fibonaccidao前十项倒序数列开始***********\n" );
int arr[10] = { 1, 1 };
for ( int i = 2; i < 10; i++ )
arr[i] = arr[i - 1] + arr[i - 2];
int res[10];
for ( int i = 9; i >= 0; i-- )
res[9 - i] = arr[i];
for ( int i = 0; i < 10; i++ )
printf( "%d\n", res[i] );
printf( "********fibonaccidao前十项倒序数列结束***********\n" );
}
/*
* *冒泡排序
*/
void test2()
{
printf( "********冒泡排序开始***********\n" );
int num;
int arr[SIZE];
for ( int i = 0; i < SIZE; i++ )
{
printf( "Please enter a number:\n" );
scanf( "%d", &num );
arr[i] = num;
}
for ( int i = 0; i < SIZE - 1; i++ )
{
for ( int j = 0; j < SIZE - i - 1; j++ )
if ( arr[j] > arr[j + 1] )
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
for ( int i = 0; i < SIZE; i++ )
printf( "%d\t", arr[i] );
printf( "\n" );
printf( "********冒泡排序结束***********\n" );
}
/*
* 选择排序
* 这里掌握的不太好
*/
void test3()
{
printf( "********选择排序开始***********\n" );
int num;
int arr[SIZE];
for ( int i = 0; i < SIZE; i++ )
{
printf( "Please enter a number:\n" );
scanf( "%d", &num );
arr[i] = num;
}
for ( int i = 0; i < SIZE - 1; i++ )
{
int min_index = i;
for ( int j = i + 1; j < SIZE; j++ )
{
if ( arr[j] < arr[min_index] )
min_index = j;
}
int temp = arr[i];
arr[i] = arr[min_index];
arr[min_index] = temp;
}
for ( int i = 0; i < SIZE; i++ )
printf( "%d\t", arr[i] );
printf( "\n" );
printf( "********选择排序结束***********\n" );
}
/*
* 4、 数组解决进制转换问题:
* 从终端输入要进行转换的数字(num),
* 及要转换成的某种进制(base),按输入要求进行输出。
*/
void test4()
{
int num, base, temp, i = 0;
int arr[32];
printf( "Please enter a number:" );
scanf( "%d", &num );
printf( "Please enter BASE:" );
scanf( "%d", &base );
temp = num;
do
{
arr[i] = temp % base;
i++;
temp = temp / base;
}
while ( temp != 0 );
for ( --i; i >= 0; i-- )
{
if ( arr[i] > 10 )
{
char ch = 'A' + arr[i] - 10;
printf( "%c", ch );
}else{
printf( "%d\t", arr[i] );
}
printf( "\n" );
}
}
int main()
{
printf( "Hello Array!\n" );
/*
* test1();
* test2();
* test3();
*/
test4();
return(0);
}
© 版权声明
转载请注明出处,并标明原文链接。
本网站尊重知识产权,如有侵权,请及时联系我们删除。
本站所有原创内容仅用于学习和交流目的,未经作者和本站授权不得进行商业使用或盈利行为。
本网站尊重知识产权,如有侵权,请及时联系我们删除。
本站所有原创内容仅用于学习和交流目的,未经作者和本站授权不得进行商业使用或盈利行为。
THE END
暂无评论内容