//用指向指针的指针的方法对5个字符串排序并输出
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void sort(char* a[5], int n);
int main() {
char* str[5], ** p;
//为输入的字符串分配空间
int i;
for (i = 0; i < 5; i++) {
str[i] = (char*)malloc(20 * sizeof(char));
}
//输入5个字符串
for (i = 0; i < 5; i++) {
p = str;
scanf_s("%s", *(p + i),20);
}
//调用排序函数
sort(str, 5);
//输出排序完的字符串
for (i = 0; i < 5; i++) {
printf("%s\n", *(p + i));
}
return 0;
}
//排序函数
void sort(char* a[5], int n) {
int i, j;
char* t;
for (i = 0; i < n; i++) {
for (j = i; j < n; j++) {
if (strcmp(a[i], a[j]) > 0) {
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
}
【C】8.20用指向指针的指针的方法对5个字符串排序并输出
最新推荐文章于 2021-05-19 10:17:10 发布