美文网首页
2.指针数组及排序

2.指针数组及排序

作者: 陈忠俊 | 来源:发表于2020-02-24 14:43 被阅读0次

语法/原型:
int strcmp(const char* stri1,const char* str2);

参数 str1 和 str2 是参与比较的两个字符串。

strcmp() 会根据 ASCII 编码依次比较 str1 和 str2 的每一个字符,直到出现不到的字符,或者到达字符串末尾(遇见\0)。

返回值:
如果返回值 < 0,则表示 str1 小于 str2。
如果返回值 > 0,则表示 str2 小于 str1。
如果返回值 = 0,则表示 str1 等于 str2。

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

#从小往大排序字符串
void sort(char *name[], int n){
    char *pt;
    int i, j, k;
    for(i = 0; i < n - 1; i++){
        k = i;
        for(j = i + 1; j < n; j++) 
            if(strcmp(name[k], name[j]) > 0) k = j; #循环找到该次轮循的最小值
        if(k != i){ #找到最小的字符串后,交换该次循环的字符串的地址
            pt = name[i];
            name[i] = name[k];
            name[k] = pt;
        }
    }
}

void print(char *name[], int n){
    int i;
    for(i = 0; i < n; i++) printf("%s\n", name[i]);
}

int main(){
    static char *name[] = {"CHINA", "AMERICA", "AUSTRALIA", "FRANCE", "GERMAN"};
    int n = 5;
    sort(name, n);
    print(name, n);
    return 0;
}

相关文章

  • 2.指针数组及排序

    语法/原型:int strcmp(const char* stri1,const char* str2); 参数 ...

  • 数组

    26 删除排序数组中的重复项 使用双指针的做法,删除排序数组中的重复项其实就是找出排序数组中的非重复项,两个指针,...

  • C语言中的指针与数组

    C语言中的指针与数组 @(C语言)[排序算法, 快速排序, C实现] 引言 相信指针与数组是不少同学在初学C语言时...

  • 88. Merge Sorted Array.go

    合并已排序的数组,两个指针

  • 8 -11作业汇总

    8、15work 1、自己独立写出冒泡排序及选择排序 一、冒泡排序 二、选择排序 2. 找出数组元素中,差值(绝对...

  • 单向链表的排序

    单向链表的排序 最简单的做法是使用辅助数组,数组里存的是指针和value值,然后排序成功后,重新利用指针调整链表的...

  • C扩展:指针

    1. 指针变量连续定义 试一下 2. 变量指针 vs 数组指针 变量指针:指向单个变量的指针。数组指针:指向数组的...

  • 12.15C基础数组和指针的学习

    笔记: 一 数组 1.二维数组 2.指针 2.二级指针

  • 数组指针和指针数组

    1.数组指针(又称行指针) 二维数组赋给一指针时: 2.指针数组 二维数组赋给一指针数组: 小结:数组指针只是个指...

  • C语言函数指针与指针运算

    1.多级指针 2.数组与数组指针 3.采用指针遍历数组 4.循环时给数组赋值 5.数组指针操作的几种方式 6.指针...

网友评论

      本文标题:2.指针数组及排序

      本文链接:https://www.haomeiwen.com/subject/wikvqhtx.html