它是家庭作业的一部分,但它不是主要部分
我已经通过自己手动更改数据来完成主要功能,但我真的不知道如何正确读取用户输入。
以下是输入的内容:
3
1 2 9
6
1 1 3 4 4 6
0
所以基本上第一个输入是下一个输入的#的大小。因此,对于3,数组大小为3,[1,2,9]为元素,对于6,数组大小为6,[1,1,3,4,4,6]为元素
当输入为0时,程序终止。
我认为通过使用while循环并说当输入[0] ='0'并且中断时,我可以终止程序,但我不知道如何将其他输入转换为char数组。
如您所见,有空格,因此scanf将以不同的方式读取char数组。
在我获得char的输入后,我相信我可以使用atoi将其恢复为整数...
所以,帮助我如何编码以便正确地获得用户输入......
也许这太模糊了:这是我想要的版本:
while(1)
{
scanf("%d", &ui);
if(ui == 0)
{
break;
}
else
{
size = ui;
int temp[size];
for(c = 0; c < size; c++)
{
scanf("%d", &input);
temp[c] = input;
}
}
}
输出对于第一个数组是好的,但是之后由于temp [size],它会输出一些奇怪的东西。有任何解决这个问题的方法吗?我希望数组的大小是用户所需大小的大小。 (例如,我上面写的输入:3和6)
答案 0 :(得分:2)