C++ C++;开关语句计数输出
我无法生成此程序的输出语句。正确的输出应打印与其数值相同的输入编号 我真的不明白你想要实现什么,但这里的这一部分:C++ C++;开关语句计数输出,c++,for-loop,switch-statement,C++,For Loop,Switch Statement,我无法生成此程序的输出语句。正确的输出应打印与其数值相同的输入编号 我真的不明白你想要实现什么,但这里的这一部分: for (count1=0; count1<=5; count1++) cout << "1"; for(count1=0;count1您肯定需要在while循环中移动开关语句(编辑:这是基于OP最初发布的代码)。看起来您需要类似的东西: #include <iostream> using namespace std; int
for (count1=0; count1<=5; count1++)
cout << "1";
for(count1=0;count1您肯定需要在while循环中移动开关
语句(编辑:这是基于OP最初发布的代码)。看起来您需要类似的东西:
#include <iostream>
using namespace std;
int main()
{
int standard, count1, count2, count3, count4, count5;
// Initialize your int's
standard = count1 = count2 = count3 = count4 = count5 = 0;
do {
cout<< "Enter value: ";
cin >> standard;
// Switch through your cases
switch(standard)
{
case 1:
count1++;
break;
case 2:
count2++;
break;
case 3:
count3++;
break;
case 4:
count4++;
break;
case 5:
count5++;
break;
}
} while(standard != 0);
// Do this type of loop for all your count vars
for(int i=0;i<count1;++i)
cout<< "1";
for(int i=0;i<count2;++i)
cout<< "2";
// And so on...
return 0;
}
起始点=应该从何处开始循环的值
SOME_CONDITION=当此条件为真时,循环将终止
SOME_CHANGE=如何更改变量(即从起点开始),直到其达到条件
这样一个循环看起来像这样:
for(STARTING_POINT;SOME_CONDITION;SOME_CHANGE);
for(int i=1;i<=5;++i){ ... }
for(inti=1;i以下是我的解释:您想要输入一个数字序列(以零结尾),然后使用循环输出完全相同的数字
这里有一些伪代码给你一个提示
Declare an array of int's large enough to hold all your input numbers.
Declare a counter c = 0.
Begin loop while input is not 0
Input number from user and store it in array[c].
Increment counter c.
End loop
Begin loop i from 0 to c-1
Output number that is in array[i].
End loop
无需对每个可能的数字使用switch语句和计数器。只需将每个输入存储在数组中它自己的位置。这看起来非常像“编程入门”很遗憾,您提供的代码与您试图编写的代码几乎没有相似之处。我在任何地方都看不到问题。您需要帮助做什么?这段代码到底应该做什么?“正确的输出应该打印与其数值相同的输入数。”等等,什么?我真的不明白你想在这里做什么。它似乎在试图一个数字一个数字地构造一个数字,对吗?这不是答案;它应该作为对原始问题的评论发布。你可能想在开始收集选票之前删除它。@Ken:大多数时候我同意,但考虑到问题的模糊性"问题:"在这里,我很高兴地猜测Rob指出的是OP试图解决的问题的一部分。-1对于大量的代码和很少的解释。@Potatoswatter:没有太多其他需要解释的。我解释了for循环的范围,这是他在我看来问题最多的地方。看看他的原始代码,也许我可以进一步分离for循环,但仅此而已。这基本上就是循环的“Hello World”(不考虑I/O,但这也是非常基本的,因为他似乎理解它)。他没有重载++
运算符,因此它仍然是递增的。请详细说明您是否希望看到有关此代码的进一步解释。您从根本上更改了功能,并说“看起来这就是您想要的”。显然,他仍然在“你好,世界”即使对我们来说这似乎是非常基本的,那也是他所需要的教学水平。@Potatoswatter:我会补充一些评论,但是,如果这是标记为家庭作业的话,我就不会提供这样的代码-唯一被更改的是开关的位置我将把它附加到我的回答中。家庭作业
标签几乎总是由回答者而不是提问者添加的,所以你不能依赖它。除了开关的位置外,你还重写了产生输出的循环,并做了一些风格上的改变。