Compile Error
/in/foo.c: In function 'main': /in/foo.c:10:2: warning: this 'for' clause does not guard... [-Wmisleading-indentation] for (int i=0; i < N; i++) ^~~ /in/foo.c:12:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for' if (c == '\n') ^~ /in/foo.c:13:8: error: 'i' undeclared (first use in this function) str[i] = '\0'; ^ /in/foo.c:13:8: note: each undeclared identifier is reported only once for each function it appears in /in/foo.c:12:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (c == '\n') ^~ /in/foo.c:14:4: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' break; ^~~~~ /in/foo.c:14:4: error: break statement not within loop or switch
代码
#include <stdio.h>
#include <ctype.h>
#define N 100
int
main(void)
{
char str[N+1], c;
int alpha = 0, num = 0, space = 0, other = 0;
for (int i=0; i < N; i++)
c = getchar();
if (c == '\n')
str[i] = '\0';
break;
str[i] = c;
for (char *p=str; *p != '\0'; p++)
{
if (isalpha(*p))
alpha++;
else if (isalnum(*p))
num++;
else if (isspace(*p))
space++;
else
other++;
}
printf("%d\n%d\n%d\n%d", alpha, num, space, other);
return 0;
}
信息
- 递交者
- 类型
- 自测
- 题目
- 7.9统计个数
- 语言
- C
- 递交时间
- 2018-10-26 11:11:32
- 评测时间
- 2018-10-26 11:11:32
- 评测机
- 分数
- 0
- 总耗时
- 15ms
- 峰值内存
- 3.035 MiB