修改文件结构。

This commit is contained in:
unlockable
2023-02-21 10:56:54 +08:00
parent a64cfdd9f3
commit 40182871f4
83 changed files with 0 additions and 0 deletions

47
POP/12/Exercise01.c Normal file
View File

@@ -0,0 +1,47 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void readString(char** stringPtrPtr, int stringCount) {
char tempStringPtr[81] = {0};
int i = 0;
for (i = 0; i < stringCount; i++) {
scanf("%80s", tempStringPtr);//读入临时字符串
stringPtrPtr[i] = malloc(strlen(tempStringPtr) + 1);//创建一个和temp一样大的空间
strcpy(stringPtrPtr[i], tempStringPtr);//把temp 复制进新申请的地址里
}
}
void swap(char** a, char** b) {
char* tmp = *a;
*a = *b;
*b = tmp;
}
int main() {
int n = 0;
int i = 0;
char** stringPtrArrayPtr;//指向字符串指针数组的指针字符串指针数组的大小要根据N的数量确定有几个指针
int moved = 1;
scanf("%d", &n);
stringPtrArrayPtr = (char**) malloc(sizeof(int* ) * n);//根据N的大小决定要多少个字符串指针
readString(stringPtrArrayPtr, n);
while(moved) {
moved = 0;
for (i = 0; i < n - 1; i++) {
if (strcmp(stringPtrArrayPtr[i], stringPtrArrayPtr[i+1]) > 0) {
//若前面的比后面的大,就交换
moved = 1;
swap(&stringPtrArrayPtr[i], &stringPtrArrayPtr[i+1]);
}
}
}
for (i = 0; i < n; i++) {
printf("%s\n", stringPtrArrayPtr[i]);
}
return 0;
}