#include <stdio.h>
#include <stdlib.h>
#define BUF_SIZE 10
#define RAND_NUM_MAX 100
unsigned char buf[BUF_SIZE] = {0};
//===串口打印=================================
int fputc(int ch, FILE * stream)
{
HAL_UART_Transmit(&huart1, (unsigned char *)&ch, 1, HAL_MAX_DELAY);
return ch;
}
//===回调比较函数,注意数组类型和回调匹配===========
int compare_char(const void *a, const void *b)
{
return (*(char *)a) - (*(char *)b);
}
int compare_int(const void *a, const void *b)
{
return (*(int *)a) - (*(int *)b);
}
//===产生随机数排序=============================
void rand_num(void)
{
unsigned int i;
for(i = 0; i < BUF_SIZE; i++)
{
srand(HAL_GetTick()); //设置随机数种子
HAL_Delay(1); //等待改变种子
buf[i] = rand()%(RAND_NUM_MAX + 1);
printf("%d ", buf[i]);
}
//---排序----------------------------
qsort(buf, BUF_SIZE, sizeof(buf[0]), compare_char);
printf("\r\n");
for(i = 0; i < BUF_SIZE; i++)
printf("%d ", buf[i]);
}
全篇完。
本人博客仅仅代表我个人见解方便记录成长笔记。
若有与 看官老爷见解有冲突,我坚信看官老爷见解是对的,我的是错的。
感谢~!