11.15

发布时间 2023-12-17 17:22:50作者: 刘梦磊

4. 输入若干个字符串(最多10个),求出每个字符串的长度,并打印最长字符串的内容。以“stop”作为输入的最后一个字符串。

 

程序代码:

#include <stdio.h>

#include <string.h>

 

#define MAX_STRINGS 10

#define MAX_LENGTH 100

 

void printLongestString(char strings[][MAX_LENGTH], int count) {

    int longestLength = 0;

    char longestString[MAX_LENGTH];

 

    for (int i = 0; i < count; i++) {

        int currentLength = strlen(strings[i]);

        if (currentLength > longestLength) {

            longestLength = currentLength;

            strcpy(longestString, strings[i]);

        }

    }

 

    printf("最长的字符串是: %s\n", longestString);

}

 

int main() {

    char strings[MAX_STRINGS][MAX_LENGTH];

    int count = 0;

 

    printf("请输入字符串 (最多10个),以 'stop' 结束输入:\n");

 

    while (count < MAX_STRINGS) {

        printf("字符串%d: ", count + 1);

        scanf("%s", strings[count]);

 

        if (strcmp(strings[count], "stop") == 0) {

            break;

        }

 

        count++;

    }

 

    printf("\n");

 

    printf("每个字符串的长度:\n");

    for (int i = 0; i < count; i++) {

        printf("字符串%d: %d\n", i + 1, strlen(strings[i]));

    }

 

    printf("\n");

 

    printLongestString(strings, count);

 

    return 0;

}