demo用一个简单的冒泡排序做为 被调函数
BubbleSort.c
void BubbleSort(int data_in[100])
{
for(int i = 0;i < 100;i++)
{
for(int j = 0;j < 99-i;j++)
{
if(data_in[j] < data_in[j+1] )
{
int temp = data_in[j];
data_in[j] = data_in[j+1];
data_in[j+1] = temp;
}
}
}
}
BubbleSort.h
#ifndef __BUBBLESORT_H__
#define __BUBBLESORT_H__
void BubbleSort(int data_in[100]);
#endif
main.c
#include<stdio.h>
#include"BubbleSort.h"
int main(void)
{
int in1[100];
int in2[100];
/*
for(int i = 0;i < 100;i++)
{
in1[i] = i;
in2[i] = 100 - i;
}
for(int i = 0;i<100;i++)
{
printf("in1[%d] = %x\n",i,in1[i]);
}
for(int i = 0;i < 100;i++)
{
printf("in2[%d] = %x\n",i,in2[i]);
}
*/
BubbleSort(in1);
BubbleSort(in2);
for(int i = 0;i< 100;i++)
{
printf("in1[i] = %x\n",i,in1[i]);
}
for(int i = 0;i < 100;i++)
{
printf("in2[i] = %x\n",i,in2[i]);
}
return 0;
}
makefile
BubbleSort : main.o BubbleSort.o
gcc main.o BubbleSort.o -o BubbleSort
main.o : main.o
BubbleSort.o : BubbleSort.c BubbleSort.h
clear :
rm *.o BubbleSort
运行界面
附:SelectionSort.c
void SelectionSort(int *arr,int size)
{
int tmp;
for(int i = 0;i < size;i++)
{
int k = i;
for(int j = i+1;j < size;j++)
{
if(arr[j] < arr[k])
{
k = j;
}
}
tmp = arr[k];
arr[k] = arr[i];
arr[i] = tmp;
}
}