Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在同一行中输入空格。_C++_C_Input - Fatal编程技术网

C++ 在同一行中输入空格。

C++ 在同一行中输入空格。,c++,c,input,C++,C,Input,我需要做一个程序,输入是一组数据,有6行,3个数字用空格隔开,最后一行是“c”或“f”: input: 4 5 6 7 8 9 7 8 9 4 5 6 7 8 9 7 8 9 c 4 5 6 7 8 9 7 8 9 4 5 6 7 8 9 7 8 9 c 4 5 6 7 8 9 7 8 9 4 5 6 7 8 9 7 8 9 f 如果6行后面的最后一个字母是c,则继续其他6行,如果是f,则结束 我打算: int main(){ char a; int triangulo[6][3]; do{

我需要做一个程序,输入是一组数据,有6行,3个数字用空格隔开,最后一行是“c”或“f”:

input:
4 5 6
7 8 9
7 8 9
4 5 6
7 8 9
7 8 9
c
4 5 6
7 8 9
7 8 9
4 5 6
7 8 9
7 8 9
c
4 5 6
7 8 9
7 8 9
4 5 6
7 8 9
7 8 9
f
如果6行后面的最后一个字母是c,则继续其他6行,如果是f,则结束

我打算:

int main(){

char a;
int triangulo[6][3];
do{
    for(int i=0; i<6; i++){
            cin>>triangulo[i][0]>>triangulo[i][1]>>triangulo[i][2];                    
    }

    cin>>a;  
}while(a != 'f'); 


system("pause");
}
如果我必须对每个数组求和,并且总和是我的输出,我需要为每个数据集创建一个数组

input:
4 5 6
7 8 9
7 8 9
4 5 6
7 8 9
7 8 9
c
4 5 6
7 8 9
7 8 9
4 5 6
7 8 9
7 8 9
c
4 5 6
7 8 9
7 8 9
4 5 6
7 8 9
7 8 9
f
output
126
126
126

像这样的东西应该可以读取三位数

cin>>triangulo[0] >> triangulo[1] >> triangulo[2]; 
但是,如果您正在读取数字(1、2、3、18、33、418或类似的数字),则可能需要使用
int triangula[3]取而代之。如果你真的想存储6组三个数字,你需要一个二维数组:

int triangulo[6][3];

...

        cin>>triangulo[i][0] >> triangulo[i][1] >> triangulo[i][2]; 
试试这个

int main(){

    char a;
    int triangulo[3];
    int sum=0;
    do{
        for(int i=0; i<6; i++){
            cin>>triangulo[0] >> triangulo[1] >> triangulo[2];
            sum=sum+triangulo[0]+triangulo[1]+triangulo[2];
        }

        cin>>a;  
    }while(a != 'f'); 

    cout<<sum;

    system("pause");
}
intmain(){
字符a;
int-triangulo[3];
整数和=0;
做{
对于(inti=0;i>triangulo[0]>>triangulo[1]>>triangulo[2];
sum=sum+triangulo[0]+triangulo[1]+triangulo[2];
}
cin>>a;
}而(a!=“f”);

我不明白你的意思,但是我写了六行,后来是一个f,程序永远不会结束。你能用另一种方式说出来吗?因为我不明白你在问什么。试着让你的数组变量
int triangula[…];
而不是
char triangula[…];
-使用char,它将接受数字之间的空格作为输入,因此您将失去同步,并且可能位于另一组18“数字上”当你输入你的“f”时。这与原来的问题有什么不同?是的,但我的主要问题是:我插入六行,然后插入一个“c”以继续,然后插入其他6行。我需要为每次插入创建一个数组以继续???,例如,如果我在“c”之后写入6行,然后在“f”之后写入其他6行,我需要创建2个数组rrays?。因为我需要做一个操作。然后打印一个输出。@Alexanderovelle如果你想在所有数组输入后打印,那么是的。或者你可以在每次输入后打印一个数组。如果你不知道你可能有多少个输入数组,你应该使用
new
来动态分配内存。我需要打印总和,我需要创建一个ar因为当程序开始时,我不知道用户会写多少次“c”?