我将不得不接受用户的输入并从这 10 个字符串中找到最长的输入..
#include<stdio.h>
#include<conio.h>
void main() {
char str[10][10]
printf("Enter strings:")
scanf("%s", str)
}
如果我这样接受用户输入,它会将字符串存储在 str 二维数组中吗?为了首先找出最长的字符串,我会找到每个字符串的长度并使用 max_length 函数来确定最长的字符串。
最佳答案
您不需要存储所有字符串,只需存储迄今为止输入的最长字符串即可。 请注意,您确实需要定义字符串的最大长度以避免缓冲区溢出。
例如:
#define MAX_STRING_SIZE 1024
char last_entered_string[MAX_STRING_SIZE];
char longest_entered_string[MAX_STRING_SIZE] = ""; /* Must be initialized. */
scanf("%1023s", last_entered_string); /* Read one less to allow for
null terminator. */
使用循环接受十个输入并与最长的字符串进行比较。如果最后输入的字符串较长,则将其复制到最长的字符串中。由于这是家庭作业,我不会提供任何进一步的代码。
关于c - 从 C 中的十个字符串列表中查找最长的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12528412/