【发布时间】:2022-11-12 09:06:46
【问题描述】:
前言:此作业将在不到 7 小时内完成。上周我每天都在尝试这个任务。今天我一个人花了8个小时。我在这门课上太落后了,如果我不通过这个作业和之后的每一个作业,我都会不及格。我真的不想失败。
(另外:对我来说最好的学习方式是被问问题。如果你们问我问题,我会尽我所能回答,如果我错了,请纠正我。)
这是作业:
限制:
- 您可以在本练习中使用 1 维或 2 维数组。
- 请勿使用指针,本练习中不允许使用指针。
- 不要使用全局变量。
- 请勿使用 printf、scanf、fgets 和 strlen 以外的库函数。目的是自己构建尽可能多的功能。
标准:
- 您将选择用户将输入的字符串数量(至少需要 5 个)。字符串可以是用双引号括起来的 1 个或多个单词。
- 您应该使用#define COUNT <constant> 来设置要输入的字符串数。常数可以是任何大于或等于 5 的数字。
- 您将至少创建 3 个函数。如果有必要,您可以创建额外的功能。
- 您必须将这 3 个函数放在 main 声明之后。
- 您必须创建头文件并将所有常量和原型放在 .h 文件中。
功能:
- 第一个名为 getStrings 的函数将接受来自用户的 COUNT 个字符串
- 输入的每个字符串最多应包含 30 个字符。
- 该函数应返回用户输入的最长字符串的长度。
- 如果您多次调用 getStrings,您可以使用静态变量。这是跟踪字符串长度的最简单方法。
- 称为 isPalindrome 的第二个函数确定输入的字符串是否为回文。 函数 isPalindrome 应该返回找到的回文数。
- isPalindrome 将调用下面描述的函数 reverseStr。
- isPalindrome 将打印字符串并声明它是否是回文。
- 最后打印找到的最长字符串的长度。这意味着 isPalindrome 函数调用 getString 函数。
- 名为 reverseStr 的第三个函数将反转字符串。
- 不要使用任何库函数,您必须构建自己的反向算法。
- 函数 reverseStr 应该返回: 1 如果原始字符串和反向字符串相同。 如果原始字符串和反向字符串不同,则为 0。
它没有在我的脑海中点击功能如何相互连接。我理解它们背后的概念,但是当我将其付诸实践时,我的大脑拒绝理解它。我已经报废并重新报废了很多次。请帮我。
【问题讨论】:
-
问题是什么?
-
@alex01011
for(unsigned i = 0; i < COUNT; i++) { scanf("%20s", words[i]; }, -
是的,我错过了那部分@AllanWind
-
这是与您链接的问题相同但更详细的问题吗?
-
@Rob 相同的任务,但其他问题是一个特定的问题。它不是重复的。
标签: c string function types palindrome