C语言:对指针数组中N个指针元素进行大小排序

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int n;
    printf("please input num:\n")// 输入字符串个数
    scanf("%d",&n);
    char *str[n];
    char *ptr = (char*)malloc(sizeof(char)*10); //定义一个空的字符串
    int i, j, k, a;
    for(i = 0;i < n; i++)
    {
        printf("please input str:");
        str[i] = (char*)malloc(sizeof(char)*10);
        scanf("%s",str[i]);                      //获取
    }
    for(a = 0;a < n-1;a++)
    {
       for(j = 0;j < n-1;j++)
         {
              if(strcmp(str[j],str[j +1]) < 0)// 比较大小
             {
                  ptr = str[j];
                  str[j] = str[j + 1];
                  str[j + 1]= ptr;             //交换位置
             }
         }
    }
    i = 0;
    for(i = 0;i < n;i++)
    {
        printf("%s \n",str[i]);                  //输出
    }
    
  return 0;
}

 字符串 首末倒置:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    char *p = (char*)malloc(sizeof(char)*10);
    printf("pelease input:\n");
    scanf("%s",p);
    char s[10]={0};
    int length = strlen(p);
    int i;
    for(i = 0;i < length;i++)
    {
        s[i] = p[length - i - 1];
    }
    printf("%s\n",s);
}

猜你喜欢

转载自blog.csdn.net/chenxinntu/article/details/81216267