为了能到远方,脚下的每一步都不能少.|

Dancing-Pierre

园龄:1年10个月粉丝:3关注:0

2022-05-02 15:32阅读: 64评论: 0推荐: 0

[C语言]使用指针将输入的多个字符串按长度升序排序

[C语言]使用指针将输入的多个字符串按长度升序排序

1、题目

编写一个函数,利用指针将输入的多个字符串按长度升序排序

要求:子函数 void StrSort(char *p[N],int n)

示例:

输入:
HU
KOBE
BRYANT
CCZU
输出:
HU
KOBE
CCZU
BRYANT

2、完整代码

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
#define N 4
void StrSort(char* p[N], int n) {
int i, j;
char* ch;
//冒泡排序法
for (i = 0; i < N; i++)
{
for (j = 0; j < N - i - 1; j++)
{
//如果后面的比前面的长就交换指针
if (strlen(p[j]) > strlen(p[j + 1]))
{
ch = p[j];
p[j] = p[j + 1];
p[j + 1] = ch;
}
}
}
}
int main() {
char* str[N];
int i;
char* ch;
for (i = 0; i < N; i++) {
str[i] = (char*)malloc(sizeof(char) * 10);
gets(str[i]);
}
StrSort(str, 4);
for (i = 0; i < N; i++)
printf("%s\n", str[i]);
return 0;
}

3、截图

请添加图片描述

本文作者:Dancing-Pierre

本文链接:https://www.cnblogs.com/wyc-1009/p/17548046.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   Dancing-Pierre  阅读(64)  评论(0编辑  收藏  举报  
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起