首页 > 其他分享 >指针数组练习排列字符串

指针数组练习排列字符串

时间:2024-05-20 15:18:37浏览次数:19  
标签:int char 数组 字符串 include 指针

用指针数组实现排列字符串

#include<stdio.h>
#include<math.h>
#include<string.h>
#define N 5
void OrderString(char *p[],int n);


int main(){
    char *arr[10]={"Hello","How are you?","I'm fine","I love computer",
    "Please sit down","Are you OK?","Build messages","Code Block","Java language","CppCheck"};

    printf("before order:\n");
        for(int i=0;i<10;i++)
        puts(arr[i]);

    OrderString(arr,10);

    printf("after order:\n");
    for(int i=0;i<10;i++)
        puts(arr[i]);
}

void OrderString(char *p[],int n){
    int i=0,j=0;
    for(;i<n-1;i++){
        for(j=i+1;j<n;j++){
                if(strcmp(p[i],p[j])>0){
                    char *temp=p[i];p[i]=p[j];p[j]=temp;
                }

        }
    }
}

标签:int,char,数组,字符串,include,指针
From: https://www.cnblogs.com/zhongta/p/18202042

相关文章

  • 字节流与十六进制字符串的相互转化
    usingDigest=std::vector<unsignedchar>;std::stringdigestToHex(constDigest&bytes,std::size_tlength){ staticconstchardigits[]="0123456789abcdef"; conststd::size_tfullLen=bytes.size()*2; std::size_tlen=length?l......
  • 152- Maximum Produce Subarray-最大子数组之乘积
    问题描述Givenanintegerarray nums,finda subarray.thathasthelargestproduct,andreturn theproduct.Thetestcasesaregeneratedsothattheanswerwillfitina 32-bit integer.解释:找出一个数组中乘积最大的子数组,返回子数组的乘积。案例:Input......
  • PTA——字符串答案
    7-1sdut-C语言实验-字符编码请将一串长度最长为5的纯字母文本译成一个密码,密码规律如下:用原来的字母后面的第4个字母代替原来的字母。如C用G代替(如果该字母没后面没有第4个字母可代替,则需从26字母表中的首字母开始代替,比如:W用A代替,Z用D代替),最后得到的文本即为密码。输入格式:......
  • Vue3+nanoid编写字符串ID生成器
    Vue3+nanoid编写字符串ID生成器中文介绍:https://github.com/ai/nanoid/blob/HEAD/README.zh-CN.md一个小巧、安全、URL友好、唯一的JavaScript字符串ID生成器。“一个惊人的无意义的完美主义水平,这简直让人无法不敬佩。”小巧. 116字节(经过压缩和Brotli处理)。没有依......
  • 实验4 C语言数组应用编程
    task1.1voidtest1(){inta[N]={1,9,8,4};inti;//输出数组a占用的内存字节数printf("sizeof(a)=%d\n",sizeof(a));//输出int类型数组a中每个元素的地址、值for(i=0;i<N;++i)printf("%p:%d\n",&a[i],a[i......
  • 指针练习5*5矩阵最大最小值
    将最大值放在5*5矩阵中央将左上右上左下右下分别放第1,2,3,4的最小值#include<stdio.h>#include<math.h>#include<string.h>#defineN5voidMove(int(*arr)[N]);int*Max(int(*arr)[N]);voidMin4(int(*arr)[N]);voidSwap(int*x,int*y);intmain(){intarr[5]......
  • 实验4 C语言数组应用编程
    实验任务1task1.1#include<stdio.h>#defineN4voidtest1(){inta[N]={1,9,8,4};inti;printf("sizeof(a)=%d\n",sizeof(a));for(i=0;i<N;++i)printf("%p:%d\n",&am......
  • 指针练习N个人报数,每报到3的人出局
    #include<stdio.h>#include<math.h>voidRound(int*arr,intn);voidSearchLast(int*arr,intn);intmain(void){intarr[4];Round(arr,4);SearchLast(arr,4);}voidRound(int*arr,intn){intflag=n;inti=0;for(i=0;i<n;i++)/......
  • 指针练习N个数后移M个位置
    有N个整数,使前面各数顺序向后移动M个位置,最后M个数变成最前面M个数。#include<stdio.h>#include<math.h>voidMove(int*arr,intn,intm);intmain(void){intarr[10]={99,88,77,66,55,44,33,22,11,0};printf("beforemove:\n");for(inti=0;i<10;i++)pr......
  • 指针练习输入十个数
    将最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:1.输入10个数。2.进行处理。3.输出10个数。#include<stdio.h>#include<math.h>voidInput(int*arr);voidChange(int*arr);voidOutput(int*arr);intmain(void){Input(arr);Change(arr);......