c++ 传入字符串 带返回值_C语言100题集合016-使用指向指针的指针对字符串排序

系列文章《C语言经典100例》持续创作中,欢迎大家的关注和支持。

喜欢的同学记得点赞、转发、收藏哦~

后续C语言经典100例将会以pdf和代码的形式发放到公众号

欢迎关注:计算广告生态 即时查收

1 题目

函数:sort()

功能:使用指向指针的指针对字符串排序

描述:

使用指向指针的指针对字符串排序,输出是按照字母顺序进行排序

6e708b9ea2c061a4ee3b4ff586cf4975.png

2 思路

a. 熟悉指向指针的指针的使用

char *nums[]={"", ""};char **p;p = nums;

熟悉 *p 指向的是 nums[0] 的首地址

b. 引用模块#include

使用函数 int strcmp(const char *str1, const char *str2) 进行字符串的比较

该函数返回值如下:

  • 如果返回值小于 0,则表示 str1 小于 str2。
  • 如果返回值大于 0,则表示 str1 大于 str2。
  • 如果返回值等于 0,则表示 str1 等于 str2。

3 代码

#include  #include #define N 10/**函数:fun()功能:使用指向指针的指针对字符串排序描述:使用指向指针的指针对字符串排序,输出是按照字母顺序进行排序**/void sort(char **p) { char *temp;  // 排序交换时的临时变量 for (int i = 0; i  0) {  // 使用strcmp进行字符串的比较    temp = *(p+i);    *(p+i) = *(p+j);    *(p+j) = temp;   }  } }}int main(int argc, char const *argv[]) {  int n = 5;  char **p; char *nums[] = {  "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" }; p = nums;   // 使用指向指针的指针指向字符串数组 printf("排序前的数组内容为:"); for (int i = 0; i 

示例结果:

$ gcc ex016.c -o demo$ ./demo排序前的数组内容为:one two three four five six seven eight nine ten排序后的数组内容为:eight five four nine one seven six ten three two

--END--

喜欢本文的同学记得点赞、转发、收藏~

更多内容,欢迎大家关注我们的公众号:计算广告生态

后续C语言经典100例将会以pdf和代码的形式发放到公众号

同时也带来更多系列文章以及干货!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值