【发布时间】:2020-04-09 08:44:13
【问题描述】:
这似乎是一项简单的任务,但由于某种原因,我的代码无法正常工作。 我尝试移动部件以查看发生了什么变化,修复了错误使用的变量,但每次尝试构建和运行程序时环境仍然崩溃。
这是我的代码:
int n, a, dgt, I, II, III, IV, V, VI, VII, VIII, IX;
cout << "Enter an integer: \n";
cin >> n;
a = n;
while (a > 0) // I use this cycle to seperate every number of the chain
{
while (n > 0) // I use this cycle to analyze every number of the chain
{
dgt = n % 10;
n = n / 10;
if (dgt == 1) I ++;
if (dgt == 2) II++;
if (dgt == 3) III ++;
if (dgt == 4) IV ++;
if (dgt == 5) V ++;
if (dgt == 6) VI ++;
if (dgt == 7) VII ++;
if (dgt == 8) VIII ++;
if (dgt == 9) IX ++;
}
a--;
}
如果您能给我任何建议,我将不胜感激:)
【问题讨论】:
-
欢迎来到 Stack Overflow!听起来您可能需要学习如何使用调试器来逐步执行代码。使用好的调试器,您可以逐行执行您的程序,并查看它与您期望的偏差在哪里。如果您要进行任何编程,这是必不可少的工具。进一步阅读:How to debug small programs 和 Debugging Guide
-
int n, a, dgt, I, II, III, IV, V, VI, VII, VIII, IX;这些是否已初始化? -
你不需要外循环。
-
看来数组的概念可以大大简化你的程序员生活。
-
你忘了
if (dgt == 0) O ++;吗?