用c语言解决以下问题:从键盘上输入N个字符串(每个字符串的长度小于20,字符串包含空白字符),对其进行升序排序并输出。
时间: 2023-06-19 21:04:31 浏览: 63
以下是用C语言解决该问题的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STRING_LENGTH 20
#define MAX_NUM_STRINGS 100
int cmp(const void *a, const void *b) {
return strcmp(*(const char **)a, *(const char **)b);
}
int main() {
char *strings[MAX_NUM_STRINGS];
char input[MAX_STRING_LENGTH];
int n, i;
printf("Enter the number of strings to sort: ");
scanf("%d", &n);
// Read in the strings
for (i = 0; i < n; i++) {
printf("Enter string %d: ", i + 1);
scanf(" %[^\n]", input); // Read in the entire line, including spaces
strings[i] = malloc(strlen(input) + 1);
strcpy(strings[i], input);
}
// Sort the strings
qsort(strings, n, sizeof(char *), cmp);
// Print the sorted strings
printf("\nSorted strings:\n");
for (i = 0; i < n; i++) {
printf("%s\n", strings[i]);
}
// Free memory
for (i = 0; i < n; i++) {
free(strings[i]);
}
return 0;
}
```
该程序使用了标准库函数`qsort()`进行字符串排序,同时使用了动态内存分配`malloc()`和`free()`来存储和释放字符串。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)