C++ 串联问题
我想获取三个用户输入值A、B、C,然后创建一个新的整数来存储这三个值,称为容量。我希望整数用逗号分隔,但当我输出整数容量时,它只返回C值。我不知道如何解决这个问题C++ 串联问题,c++,C++,我想获取三个用户输入值A、B、C,然后创建一个新的整数来存储这三个值,称为容量。我希望整数用逗号分隔,但当我输出整数容量时,它只返回C值。我不知道如何解决这个问题 #include <iostream> using namespace std; int main() { int A; cout <<"Enter Capacity of Jug A"<< endl; cin >>A; int B; cout
#include <iostream>
using namespace std;
int main()
{
int A;
cout <<"Enter Capacity of Jug A"<< endl;
cin >>A;
int B;
cout <<"Enter Capacity of Jug B"<< endl;
cin >>B;
int C;
cout <<"Enter Capacity of Jug C"<< endl;
cin >>C;
int capacity;
capacity = (A, B, C);
cout <<"capacity is "<< capacity;
return 0;
}
#包括
使用名称空间std;
int main()
{
INTA;
cout您可以像这样使用数组:
#include <iostream>
using namespace std;
int main()
{
int A;
cout << "Enter Capacity of Jug A" << endl;
cin >> A;
int B;
cout << "Enter Capacity of Jug B" << endl;
cin >> B;
int C;
cout << "Enter Capacity of Jug C" << endl;
cin >> C;
int capacity[3];
capacity[0] = A;
capacity[1] = B;
capacity[2] = C;
cout << "capacity is " << capacity[0] << "," << capacity[1] << "," << capacity[2];
return 0;
}
#包括
使用名称空间std;
int main()
{
INTA;
库塔;
int B;
cout B;
INTC;
coutc;
国际容量[3];
容量[0]=A;
容量[1]=B;
容量[2]=C;
cout您可以像这样使用数组:
#include <iostream>
using namespace std;
int main()
{
int A;
cout << "Enter Capacity of Jug A" << endl;
cin >> A;
int B;
cout << "Enter Capacity of Jug B" << endl;
cin >> B;
int C;
cout << "Enter Capacity of Jug C" << endl;
cin >> C;
int capacity[3];
capacity[0] = A;
capacity[1] = B;
capacity[2] = C;
cout << "capacity is " << capacity[0] << "," << capacity[1] << "," << capacity[2];
return 0;
}
#包括
使用名称空间std;
int main()
{
INTA;
库塔;
int B;
cout B;
INTC;
coutc;
国际容量[3];
容量[0]=A;
容量[1]=B;
容量[2]=C;
cout您的问题的一个解决方案是创建一个int
值数组。数组的每个位置都存储一个int
值
int capacity[3];
cin >> capacity[0];
cin >> capacity[1];
cin >> capacity[2];
cout << capacity[0] << ", " << capacity[1] << ", " << capacity[2] << endl;
同样的印刷方法
有关阵列的更多信息:
有关for
循环的更多信息:解决问题的一个方法是创建一个int
值数组。数组的每个位置都存储一个int
值
int capacity[3];
cin >> capacity[0];
cin >> capacity[1];
cin >> capacity[2];
cout << capacity[0] << ", " << capacity[1] << ", " << capacity[2] << endl;
同样的印刷方法
有关阵列的更多信息:
有关for
循环的更多信息:
我希望整数用逗号分隔,但当我输出整数容量时,它只返回C值
让具有int容量的设备只能保存数值、整数值(在一定范围内),这是不现实的
您已将您的问题命名为串联问题,这使我相信您正在寻找一个std::string
来保存字符串值。然后您可以用逗号和字符串文字分隔整数
#include <iostream>
#include <string> // std::string
int main()
{
// ... omitted for brevity
// use std::string, and CONCATENATE using the + operator
std::string capacity = "(" + std::to_string(A) + ", " + std::to_string(B) + ", " + std::to_string(C) + ")";
// ... do something with `capacity` ?
std::cout << "capacity is " << capacity << '\n';
return 0;
}
我希望整数用逗号分隔,但当我输出整数容量时,它只返回C值
让具有int容量的设备只能保存数值、整数值(在一定范围内),这是不现实的
您已将您的问题命名为串联问题,这使我相信您正在寻找一个std::string
来保存字符串值。然后您可以用逗号和字符串文字分隔整数
#include <iostream>
#include <string> // std::string
int main()
{
// ... omitted for brevity
// use std::string, and CONCATENATE using the + operator
std::string capacity = "(" + std::to_string(A) + ", " + std::to_string(B) + ", " + std::to_string(C) + ")";
// ... do something with `capacity` ?
std::cout << "capacity is " << capacity << '\n';
return 0;
}
您只需编写以下代码:
#include <iostream>
using namespace std;
int main()
{
int A;
cout << "Enter Capacity of Jug A" << endl;
cin >> A;
int B;
cout << "Enter Capacity of Jug B" << endl;
cin >> B;
int C;
cout << "Enter Capacity of Jug C" << endl;
cin >> C;
cout << "capacity is " << A << "," << B << "," << C << endl;
return 0;
}
#包括
使用名称空间std;
int main()
{
INTA;
库塔;
int B;
cout B;
INTC;
coutc;
cout您只需编写以下代码:
#include <iostream>
using namespace std;
int main()
{
int A;
cout << "Enter Capacity of Jug A" << endl;
cin >> A;
int B;
cout << "Enter Capacity of Jug B" << endl;
cin >> B;
int C;
cout << "Enter Capacity of Jug C" << endl;
cin >> C;
cout << "capacity is " << A << "," << B << "," << C << endl;
return 0;
}
#包括
使用名称空间std;
int main()
{
INTA;
库塔;
int B;
cout B;
INTC;
coutc;
你能告诉我怎么了吗?
您不能在一个int
变量中存储三个int
值。这没有意义。您需要其他数据类型来存储这些值,我将在后面解释
发生了什么事?
当您在右侧表达式中用,
分隔值时,编译器将它们视为多个表达式(expr1、expr2等),并按顺序计算它们,但返回最后一个结果(即代码中C
的值)。因此,容量
始终等于C
就不足为奇了
什么是正确的解决方案?
解决这个问题有多种方法
使用struct
可以定义结构并将值存储为其字段:
struct caps {
int A, B, C;
};
caps c = { A, B, C };
使用std::array
(从C++11开始)
怎么了?
您不能在一个int
变量中存储三个int
值。这没有意义。您需要其他数据类型来存储这些值,我将在后面解释
发生了什么事?
当您在右侧表达式中用,
分隔值时,编译器将它们视为多个表达式(expr1、expr2等),并按顺序计算它们,但返回最后一个结果(即代码中C
的值)。因此,容量
始终等于C
就不足为奇了
什么是正确的解决方案?
解决这个问题有多种方法
使用struct
可以定义结构并将值存储为其字段:
struct caps {
int A, B, C;
};
caps c = { A, B, C };
使用std::array
(从C++11开始)
基本上,你不能这样做。你从哪里学习C++?<代码>(a,b,c)< /Cord>,逗号表示不做你认为它做的事。- -我如何解决它?看起来你正在尝试使你的数字数组容量合适?在这种情况下,你需要声明容量为数组,然后你可以引用每个容量的项目[0 ]。所以你的要求是不可能的。你说过要创建一个“存储这三个值的新整数”。一个整数只能存储一个值。一个整数数组可以存储三个值。(如果你告诉我们三个壶容量对它们的大小有一定的限制,那么也许你可以把三个值打包成一个整数的不同的位,但这似乎不太可能是你要做的。)基本上,你不能这样做。你从哪里学习C++?<代码>(a,b,c)< /COD> >逗号表示不做你认为它做的事。那么我该如何修复它呢?看起来您正试图将容量设置为一个正确的数字数组?在这种情况下,您需要将容量声明为一个数组,然后您可以使用容量[0]引用每个项,因此您的要求是不可能的。您说要创建一个“存储这三个值的新整数”。一个整数只能存储一个值。一个整数数组可以在其中存储三个值。(如果您告诉我们三个罐子容量的大小有一些限制,那么您可能可以使用pac。)