【发布时间】:2023-03-09 02:32:01
【问题描述】:
另外,很明显我对这个编码很陌生。我很享受解决这个问题,但我觉得被这个问题困住了。任何指导将不胜感激!
我正在尝试计算来自用户的特定文本的所有字母,但是当我运行程序时我的计数器 (i) 显示为 1,而不管输入如何。下面是我的代码。
#include <stdio.h>
#include <cs50.h>
#include <string.h>
#include <ctype.h>
int main(void)
{
string a = get_string("Text: \n"); // Get input
for (int i = 0, n = strlen(a); i < 1; i++) //Set counter for number of letters
{
if isalpha(a[i]). // Count only if character is a letter
{i++;}
printf("%i\n", i); // print counter
}
}
再次感谢任何指导(用尽可能简单的术语!),因为我已经尝试了两天来解决这个问题。
【问题讨论】:
-
1.您将
i用作计数器和循环迭代器。 2. 您的for循环只查看第一个字符,因为条件是i<1。 -
C 没有类型
string。这是特殊的CS50类型吗?你在用 C++ 吗? -
你已经在 3 天前问过这个问题,然后得到了一些非常好的答案。 stackoverflow.com/questions/61399924/…
-
感谢 kaylum 和 abelenky 的帮助。 Abelenky,我确实问了一个类似的问题,但根据这些答案无法正确回答。同样,我的理解可能比不合理的建议更多。