作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在代码中犯了什么错误?它没有给出任何输出。问题在 image 中给出。我正在使用 ASCII 变量集来打印字母和数字集。
#include <ctype.h>
#include <stdio.h>
#include <string.h>
int main()
{
int i, j, temp, t, s, e;
char test[20], start = 'a', end = 'z';
scanf("%s", test);
for (i = 0; i < strlen(test) && (test[i] == '-'); i++);
for (; i < strlen(test););
{
if (isalpha(test[i]) != 0)
{
start = test[i];
for (; (i < strlen(test)) && (isdigit(test[i]) == 0); i++);
}
end = test[i - 1];
temp = end - start + 1;
if (isdigit(test[i]) != 0)
{
s = test[i];
for (; (i < strlen(test)) && (isalpha(test[i]) == 0); i++);
}
e = test[i - 1];
t = e - s + 1;
for (j = 0; j < temp; ++j, start++)
{
printf("%c", start);
}
printf("\n");
for (j = 0; j < t; ++j, s++)
{
printf("%c", s);
}
printf("\n");
}
return 0;
}
最佳答案
您已将 ;
放在 for
循环的末尾,这就是 for 循环
的主体未执行为预期的。 Effect of semicolon after 'for' loop
for (i = 0; i < strlen(test) && (test[i] == '-'); i++);
for (; i < strlen(test););
for (; (i < strlen(test)) && (isdigit(test[i]) == 0); i++);
for (; (i < strlen(test)) && (isalpha(test[i]) == 0); i++);
从每个 for
循环末尾删除 ;
。
您还应该删除内部 for 循环,因为它已在外部 for
循环中提到。 请正确检查每个 for
循环的主体。
关于c - 我在代码中犯了哪些错误。它没有给出任何输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52922136/
我是一名优秀的程序员,十分优秀!