本人在开始学习C语言的最初也是对与这些算法使用的不是特别明白,找了很久的资料才弄懂。
因为一个偶然的机会写下这些代码。希望能帮助小白门学习这些算法,尽快入门。
所有资料文档来源百度百科。
/*
start_time:2019/2/28
end_time: 2019/3/2
event:排序算法动画演示程序
requirements:实现数据排序算法(冒泡、选择和插入)的动画效果
creator:清水
*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<Windows.h>
#include<time.h>
void color(short x);
void Bubble_sort(void); //冒泡排序动画效果
int bubble_sort(void); //冒泡排序测试效果
void Select_sort(void); //选择排序动画效果
int select_sort(void); //选择排序测试效果
void Insert_sort(void); //插入排序动画效果
int insert_sort(void); //插入排序测试效果
int Selection(int n){ //选择哪种排序测试效果
int selection;
printf("\n我是小艾,下面请您选择您需要的测试排序吧!");
printf("\n 请输入您需要选择排序前面的编号吧!");
printf("\n\n\n1: 冒泡排序测试\n2: 选择排序测试\n3:插入排序测试\n4: 退出!\n");
while(scanf("%d",&selection) != EOF){
if(selection == 1){
bubble_sort();
return Selection(1);
}else if (selection == 2){
select_sort();
return Selection(1);
}else if( selection == 3){
insert_sort();
return Selection(1);
}else{
printf("\n小艾,谢谢您的使用。祝您生活愉快!再见。\n");
printf("\t\t\t开发者:清水");
return 0;
}
}
}
int main()
{
system("color f3") ;
printf("\n\n***********欢迎来到排序动画系统************\n");
Sleep(3000); //暂停一秒
system("CLS"); //清空屏幕数据
printf("\n\n************您好,我是您的助手,我叫小艾。我将帮助您理解各种排序原理************\n") ;
Sleep(3000); //暂停一秒
system("CLS"); //清空屏幕数据
printf("\n\n**********下面请跟着小艾一起学习各种排序吧***********\n");
Sleep(3000); //暂停一秒
system("CLS"); //清空屏幕数据
printf("\n\n*********下面我将为您演示各种排序动画*************\n");
Sleep(3000); //暂停一秒
system("CLS"); //清空屏幕数据
printf("\n\n****首先小艾将为您展示冒泡排序动画效果图****");
Bubble_sort();
Sleep(3000); //暂停一秒
system("CLS"); //清空屏幕数据
Sleep(1000);
system(&