#include <stdio.h> #include <string.h>

void find(char *name[], int n, int *p);

int main() { char input[100][7]; // 最多输入100个字符串,每个字符串不超过6个字符 int i = 0; while (scanf('%s', input[i]) != EOF) { // 不断输入字符串,直到遇到EOF if (strcmp(input[i], '###') == 0) { // 如果输入'###',退出循环 break; } i++; } int n = i; // 输入的字符串数量 int min_index = 0; // 最小字符串的下标 find(input, n, &min_index); // 调用函数查找最小字符串 printf('%s\n', input[min_index]); // 输出最小字符串 return 0; }

void find(char *name[], int n, int *p) { *p = 0; for (int i = 1; i < n; i++) { if (strcmp(name[i], name[*p]) < 0) { // 如果name[i]比当前最小字符串还小 *p = i; // 更新最小字符串的下标 } } }

C语言实现字符串最小值查找 - 算法详解与代码示例

原文地址: https://www.cveoy.top/t/topic/ojKH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录