繁体   English   中英

尝试从 cs50 编译 pset2 的可读性 .. 给出相同的错误“使用未声明的标识符”将不胜感激任何建议

[英]Trying to compile pset2 readability from cs50 .. Gives same errors “use of undeclared identifier” would appreciate any suggestions

试图从 cs50 编译 pset2 的可读性。不知道出了什么问题。 向我展示了很多错误。 我试图修复它们,但它给出了新的。 开始认为问题可能完全不同。 所以我被卡住了,找不到解决方法。 将不胜感激任何帮助! 谢谢!

    int main(void)
      {
      string text = get_string("Text:");
      int letterCount = 0;
      int wordCount = 0;
      int sentCount = 0;
      for(int n = 0; len = strlen(text); n < len; n++)
      {
        if(isalpha(text[n]))
           letterCount++;
        if ((n == 0 && text[n] != ' ') || (n != len - 1 && s[n] == ' ' && s[n +1] != ' '))
           wordCount++;
        if ((text[n] == '!') || (text[n] == '.') || (text[n] == '?'))
           sentCount++;
      }

      //Average number of letters per 100 words
      float avLetters = (letterCount / (float) wordCount) * 100;
      //Average number sentences per 100 words
      float avSent = (sentCount  / (float) wordCount) * 100;
    // find the index
    int Grade = round(0.0588 * avLetters  - 0.296 * avSent - 15.8);

      if(Grade < 16)
           printf("Grade %i\n", Grade);
      else if ( Grade >= 16)
           printf("Grade 16+");
      else
           printf("Before Grade 1");

}



Readability.c:12:18: error: use of undeclared identifier 'len'
  for(int n = 0; len = strlen(text); n < len; n++)
                 ^
Readability.c:12:42: error: use of undeclared identifier 'len'
  for(int n = 0; len = strlen(text); n < len; n++)
                                         ^
Readability.c:12:45: error: expected ')'
  for(int n = 0; len = strlen(text); n < len; n++)
                                            ^
Readability.c:12:6: note: to match this '('
  for(int n = 0; len = strlen(text); n < len; n++)
     ^
Readability.c:12:47: error: use of undeclared identifier 'n'
  for(int n = 0; len = strlen(text); n < len; n++)

            ^

我修复了您的编译错误,您可以将其与您的版本进行比较,看看出了什么问题。 这是构建和运行固定代码的链接

#include<cs50.h>

int main(void) {
  string text = get_string("Text:");
  int letterCount = 0;
  int wordCount = 0;
  int sentCount = 0;
  for (int n = 0, len = strlen(text); n < len; n++) {
    if (isalpha(text[n]))
      letterCount++;
    if ((n == 0 && text[n] != ' ') ||
        (n != len - 1 && text[n] == ' ' && text[n + 1] != ' '))
      wordCount++;
    if ((text[n] == '!') || (text[n] == '.') || (text[n] == '?'))
      sentCount++;
  }

  // Average number of letters per 100 words
  float avLetters = (letterCount / (float)wordCount) * 100;
  // Average number sentences per 100 words
  float avSent = (sentCount / (float)wordCount) * 100;
  // find the index
  int Grade = round(0.0588 * avLetters - 0.296 * avSent - 15.8);

  if (Grade < 16)
    printf("Grade %i\n", Grade);
  else if (Grade >= 16)
    printf("Grade 16+");
  else
    printf("Before Grade 1");
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM