c:Bubble Sort

 SortAlgorithm.h

 

/*****************************************************************//**
 * \file   SortAlgorithm.h
 * \brief  业务操作方法
 * VSCODE   c11
 * \author geovindu,Geovin Du
 * \date   2023-09-19
***********************************************************************/
#ifndef SORTALGORITHM_H
#define SORTALGORITHM_H

#include <stdio.h>
#include <stdlib.h>




/**冒泡排序法 ElementType data[] **/
int* BubbleSort(int* data,int lensize)
{
    int i,j,tmp;
    int* newdate;
	/* 原始数据 */
    //int lensize=sizeof(data) / sizeof(data [0]);//sizeof(data); //sizeof(data) / sizeof(data[0]);//
	printf("2共 長度是:%d ",lensize);
	printf("冒泡排序法:\n原始数据为:");
	for (i=0;i<lensize;i++)
		printf("%3d",data[i]);
	printf("\n");

	for (i=(lensize-1);i>=0;i--)		/* 扫描次数 */
	{
		for (j=0;j<i;j++)/*比较、交换次数*/
		{
			if (data[j]>data[j+1])	/* 比较相邻两数,如第一个数较大则交换 */
			{
				tmp=data[j];
				data[j]=data[j+1];
				data[j+1]=tmp;
			}
		}
		printf("第 %d 次排序后的结果是:",lensize-i); /*把各次扫描后的结果打印出来*/
		for (j=0;j<lensize;j++)
			printf("%3d",data[j]);
		printf("\n");
	}
	//printf("最终排序的结果为:");
	for (i=0;i<lensize;i++)
        //newdate[i]=data[i];
		printf("%3d",data[i]);
	printf("\n");

    return data;

}

#endif //SORTALGORITHM_H

  

 

/*****************************************************************//**
 * \file   helloworld.C
 * \brief  业务操作方法
 * VSCODE   c11
 * \author geovindu,Geovin Du
 * \date   2023-09-19
***********************************************************************/

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "SortAlgorithm.h"



typedef int ElementType;
int* BubbleSort(int* data,int lensize);


int main()
{
    ////SetConsoleOutputCP(65001);  
    printf("hello word\n");
    printf("你好,中囯\n");
    int i;
    int *p;    
	char str[20];

    int data[12]={60,50,39,27,12,8,45,63,20,2,10,88};	/* 原始数据 */
	int lensize=sizeof(data) / sizeof(data [0]);//sizeof(data);
    p=BubbleSort(data,lensize);
    
	itoa(lensize, str, 10);
	printf("1共長度是 %d ",lensize);
	
    printf("最终排序的结果为:");
	for (i=0;i<lensize;i++)
		printf("%3d",p[i]);
    printf("\n");
    system("pause");
    return 0;


}

  

 

 

 

 

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

typedef int ElementType;
int* BubbleSort(int* data,int lensize);


int main()
{
    ////SetConsoleOutputCP(65001);  
    printf("hello word\n");
    printf("你好,中囯\n");
    int i;
    int *p;    
	char str[20];

    int data[12]={60,50,39,27,12,8,45,63,20,2,10,88};	/* 原始数据 */
	int lensize=sizeof(data) / sizeof(data [0]);//sizeof(data);
    p=BubbleSort(data,lensize);
    
	itoa(lensize, str, 10);
	printf("1共 %d 長度是:",lensize);
	
    printf("最终排序的结果为:");
	for (i=0;i<lensize;i++)
		printf("%3d",p[i]);
    printf("\n");
    system("pause");
    return 0;


}


/**冒泡排序法 ElementType data[] **/
int* BubbleSort(int* data,int lensize)
{
    int i,j,tmp;
    int* newdate;
	/* 原始数据 */
    //int lensize=sizeof(data) / sizeof(data [0]);//sizeof(data); //sizeof(data) / sizeof(data[0]);//
	printf("2共 %d 長度是:",lensize);
	printf("冒泡排序法:\n原始数据为:");
	for (i=0;i<lensize;i++)
		printf("%3d",data[i]);
	printf("\n");

	for (i=(lensize-1);i>=0;i--)		/* 扫描次数 */
	{
		for (j=0;j<i;j++)/*比较、交换次数*/
		{
			if (data[j]>data[j+1])	/* 比较相邻两数,如第一个数较大则交换 */
			{
				tmp=data[j];
				data[j]=data[j+1];
				data[j+1]=tmp;
			}
		}
		printf("第 %d 次排序后的结果是:",lensize-i); /*把各次扫描后的结果打印出来*/
		for (j=0;j<lensize;j++)
			printf("%3d",data[j]);
		printf("\n");
	}
	//printf("最终排序的结果为:");
	for (i=0;i<lensize;i++)
        //newdate[i]=data[i];
		printf("%3d",data[i]);
	printf("\n");

    return data;

}

  

 

posted @ 2023-09-12 22:36  ®Geovin Du Dream Park™  阅读(12)  评论(0)    收藏  举报