Menu
CoddyTech

回顾:基本字符串函数

本课属于 Coddy C 学习旅程的“逻辑与流程”单元。第 19 课,共 63 课。

challenge icon

挑战

简单

编写一个 C 程序,处理多对单词,并展示你学过的所有基本字符串函数。程序应当:

  1. 读取一个整数 n,表示要处理的单词对数量
  2. 对于每一对单词:
    • 从输入中读取第一个单词
    • 从输入中读取第二个单词
    • 使用 strlen() 计算并打印每个单词的长度
    • 使用 strcmp() 比较两个单词,并打印它们是否相同
    • 使用 strcpy() 和 strcat(),将第一个单词、一个空格和第二个单词连接成一个字符串
    • 打印连接后的字符串
  3. 处理完所有单词对后,找出并打印生成的最长连接字符串的单词对

记得包含 <string.h> 头文件,以便使用字符串函数。

输出应采用以下格式:

Word 1: [word1] (Length: [length1])
Word 2: [word2] (Length: [length2])
Comparison: [identical/different]
Combined: [word1 word2]
Word 1: [word1] (Length: [length1])
Word 2: [word2] (Length: [length2])
Comparison: [identical/different]
Combined: [word1 word2]
...
Longest combined string: [longest_combined_string]

例如,如果输入是:

3
hello
world
test
test
programming
language

输出应为:

Word 1: hello (Length: 5)
Word 2: world (Length: 5)
Comparison: different
Combined: hello world
Word 1: test (Length: 4)
Word 2: test (Length: 4)
Comparison: identical
Combined: test test
Word 1: programming (Length: 11)
Word 2: language (Length: 8)
Comparison: different
Combined: programming language
Longest combined string: programming language

这个挑战将通过一个处理多对字符串的综合程序,测试你对组合使用 strlen() 计算长度、使用 strcmp() 比较字符串,以及使用 strcpy() 和 strcat() 拼接字符串的理解。

亲手试试

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

int main() {
    int n;
    scanf("%d", &n);
    
    char word1[100], word2[100];
    char combined[200];
    char longest_combined[200] = "";
    
    // TODO:在这里编写你的代码
    // 处理每组单词,找出拼接后最长的字符串
    
    return 0;
}

逻辑与流程中的所有课

自己练习: C 在线编译器