用户输入到数组
User Input into an Array
为什么不把54321
的用户整数单独放入数组integer[1][5]
as, [5][4][3][2][1]
中?它将54321
放到一个数组块中。
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int integer[1][5];
int number;
cout << "Please enter an integer: " << endl;
for (int i = 0; i < 1; i++)
{
{
for (int j = 0; j < 5; j++)
cin >> integer[i][j];
}
cout << endl;
}
for (int i = 0; i < 1; i++)
{
{
for (int j = 0; j < 5; j++)
cout << integer[i][j]<< " ";
}
cout << endl;
}
system("pause");
return 0;
}
//why wont this output an integer of 12345 individually into an array of [1][5]?
请测试这个新代码,我使用char数组输入12345,然后将其转换为整数数组,然后以相反顺序打印它以实现您需要的,您可以在第二个for循环中更改12345到54321的位置,然后修改第三个循环以打印从j=0到j<5的数字
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
char cinteger[5];
int number[5];
cout << "Please enter an integer: " << endl;
for (int j = 0; j < 5; j++)
cin >> cinteger[j];
for (int j = 0; j < 5; j++)
{
number[j]= cinteger[j] - '0';
}
cout << endl;
for (int j = 5; j > 0; j--){
cout << "[";
cout << number[j-1]<< "] ";
}
cout << endl;
return 0;
}
54321本身被视为一个整数。在这种情况下,为了在数组中实现[5][4][3][2][1],用户必须单独键入每个整数。5输入4输入3.输入2输入1输入
这是因为你要输入的每个数字之间必须有空格(或白色字符)。解析器将其视为一个数字而不是五个数字…
您接收输入的方法要求您在每次提交每个整数后按"enter"。
使用不同的方法从用户处获取数据,或者期望用户在每个单独的整数后按enter键。
如果您想继续使用std::cin,另一种方法是在for循环之前,在提示符之后获取数据,然后使用for循环找到您想要的单个整数。
示例:查找1的数字
int data[5], input, size;
cout<<"Enter the data: ";
cin>>input;
for(size = 0; size < 5; ++size){//Assumes array limit = 5.
data[size] = input%10;
input = input/10;
if(input==0)
break;//Escape if fewer characters than 5 entered.
}
记住,索引0将包含最小的数字,索引5将包含最大的数字:"21,354"将存储为{4,5,3,1,2},其中值5位于索引1。因此,打印将需要一个反向for循环。
像这样:
for(int i = size; i >= 0; --i){
cout<<data[i]<<' ';
}
cout<<endl;
您正在错误地声明您的二维数组以获得您想要的结果。试着切换你的数组,让它看起来像这样。
int integer[5][1];
这也是一个很好的参考,可以更好地理解基本的数组功能。http://www.cplusplus.com/doc/tutorial/arrays/
相关文章:
- 检查TCHAR数组输入是否为带符号整数C++
- C++数组输入不接受一定数量的整数
- 为什么我的代码无法处理大型数组输入(>10000)?
- 我正在努力处理多维数组输入和输出,我管理输入,但是打印无法按计划工作
- 使用无符号字符数组输入十六进制数
- C++用用户输入在循环中填充 char 数组:输入整个字符串时到底发生了什么?
- 如何从用户获取数组输入
- C 2x2数组输入线
- 字符数组输入限制
- 将字符串数组输入到函数C++
- C++:如何将普通话(字符串)分配给用户使用数组输入的数字 &运算符问题
- 数组排序、数组输入、数组输出
- 将字符数组输入stdin
- 如何在 c++ 中为对象数组输入字符串
- 如何在c++ mex文件中访问多维数组输入
- 读取文件并将其作为整型数组输入
- 从c++文件中获取输入(矩阵数组输入)
- 数组输入不工作
- 函数结构数组输入cin问题
- 结束数组输入(c++行业标准)