这段代码似乎可以正常工作,直到我重新运行该程序。它似乎仍然有效,但输入下一组文本的行的开头有一个“-10”。我不确定,但据我所知,问题似乎出在 printf 中。谁能帮我解决这个问题吗?谢谢你! 抱歉各位...根据要求解释该程序应该做什么。它应该接受输入直到“#”符号,然后用相应的 ASCII 数字代码以 8 为一个 block 进行打印。希望这是有道理的。
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define COUNT 8
int main(int argc, const char **argv)
{
char ch;
int charcount;
while((ch = getchar()) != '#')
{
putchar(ch);
printf("-%d ", ch);
charcount++;
if(charcount % COUNT == 0)
printf("\n");
}
return 0;
}
最佳答案
您的printf
语句
printf("-%d ", ch);
打印一个减号,然后打印换行
的十进制代码。你按下了 Enter 键,不是吗?
关于c - 当我尝试重新运行程序时,为什么此代码会产生 -10?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45406195/