gpt4 book ai didi

c - 在字符数组中查找最小字符串

转载 作者:太空宇宙 更新时间:2023-11-04 07:52:01 27 4
gpt4 key购买 nike

我试图从用空字符串“”初始化的二维数组中的一堆字符串中找到 MIN 字符串。用户输入一些字符串,然后 strcpyied 然后调用以下方法。但是 if 语句没有按预期工作:

void determineMIN(char strings[][MAX]) {
char minC[MAX] = "Z"; // Highest alphabetic uppercase char in ASCII(value: 090)
int i;
for(i=0; i < MAX; i++) {
if((strcmp(minC,strings[i]) >= 0) && (strcmp(minC,"") != 0)) {
printf("called\n");
strcpy(minC,strings[i]);
} else { // < 0
continue;
}
}
printf("MIN: %s\n",minC);
}

以这种情况为例:用户输入了以下3个字符串"cat","dog""sheep"。考虑数组的其余部分充满了“”字符串我的条件不应该起作用吗?因为它不会只调用一次,然后将最小值设置为“”。

最佳答案

你的问题是如果 minC 等于 "" 你会跳过,但是你应该检查 strings[i]:

void determineMIN(char strings[][MAX])
{
char minC[MAX];
int i;

strcpy(minC, strings[0]);
for(i=1; i < MAX; i++)
{
if((strcmp(strings[i],"") != 0) && (strcmp(strings[i], minC) < 0))
{
printf("called\n");
strcpy(minC,strings[i]);
}
else
{
continue;
}
}
printf("MIN: %s\n",minC);
}

关于c - 在字符数组中查找最小字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53231747/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com