要求编写一自定义函数sort,完成对n个字符串的降序排序?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了要求编写一自定义函数sort,完成对n个字符串的降序排序?相关的知识,希望对你有一定的参考价值。
#include "stdio.h"
#include "stdlib.h"
void sort(char *p[6])
int i,j;
char *q;
for(i=0;i<5;i++)//冒泡法进行排序
for(j=0;j<5-i;j++)
if(strcmp(p[j],p[j+1])<0)
q=p[j];
p[j]=p[j+1];
p[j+1]=q;
main()
char *p[6];//定义一个字符串指针数组
int i;
for(i=0;i<6;i++)//我这里是自己输入字符串,你可以将这个循环去了,上面换成 char *p[6]="beijing","shanghai","shenzhen",nanjing",dalian","qingdao";
p[i]=(char *)malloc(10);
scanf("%s",p[i]);
sort(p);
for(i=0;i<6;i++)
printf("%s\\n",p[i]);
参考技术A #include <stdio.h>#include <string.h>
void sort(const char* s[], int n)
int i, j;
for(i=0; i<n; i++)
for(j=i+1; j<n; j++)
if(strcmp(s[i],s[j])<0)
const char*t = s[i];
s[i] = s[j];
s[j] = t;
int main()
int i;
const char* a[6]="beijing","shanghai","shenzhen","nanjing","dalian","qingdao";
sort(a,6);
for(i=0; i<6; i++)
printf("%s ", a[i]);
printf("\n");
return 0;
C语言. .编写一个Sort函数,完成对整型数组元素升序排列。
C语言. .编写一个Sort函数,完成对整型数组元素升序排列。
#include <stdio.h>void sort(int a[], int n) //选择排序
int i,j,k,t;
for(i = 0; i < n - 1; ++i)
k = i;
for(j = k + 1; j < n; ++j)
if(a[k] > a[j]) k = j;
if(k != i)
t = a[i];
a[i] = a[k];
a[k] = t;
int main()
int a[] = 21,16,30,21,8,19,33,26,28,27,24,50,13,12;
int i,n = sizeof(a)/sizeof(a[0]);
printf("排序前:\\n");
for(i = 0; i < n; ++i)
printf("%d ",a[i]);
printf("\\n");
sort(a,n);
printf("排序后:\\n");
for(i = 0; i < n; ++i)
printf("%d ",a[i]);
printf("\\n");
return 0;
参考技术A //希望我的回答对你的学习有帮助
#include <stdio.h>
#define N 3 //定义数组的大小,表示数组中可以放的个数
void Sort(int IntArray[N]) //冒泡算法
for (int i = 0; i < N - 1; i++)
for (int j = 0; j < N - i - 1; j++)
int temp;
if (IntArray[j] > IntArray[j + 1])
temp = IntArray[j];
IntArray[j] = IntArray[j + 1];
IntArray[j + 1] = temp;
int main()
int IntArray_T[N] = ;
for (int i = 0; i < N; i++) //输入
scanf("%d", &IntArray_T[i]);
Sort(IntArray_T);
for (int i = 0; i < N; i++) //输出
printf("%4d", IntArray_T[i]);
return 0;
以上是关于要求编写一自定义函数sort,完成对n个字符串的降序排序?的主要内容,如果未能解决你的问题,请参考以下文章
C语言. .编写一个Sort函数,完成对整型数组元素升序排列。