C语言:使用指向指针的指针对字符串排序

程序运行结果如下:
在这里插入图片描述

代码如下:

#include
#include

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

int main() {
	int n;
	int i;
	char** p;
	char* strings[] = { "C", "C++", "JAVA", "C#", "GO" };
	n = sizeof(strings) / sizeof(strings[0]);
	printf("排序前的数组为:");
	for (i = 0; i < n; i++) {
		printf("%s ", strings[i]);
	}
	printf("\n");
	change(n, strings);
	printf("排序后的数组为:");
	for (i = 0; i < n; i++) {
		printf("%s ", strings[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}

你可能感兴趣的:(C语言:使用指向指针的指针对字符串排序)