c++中如何将一串数字赋给一个数组

如何实现一次性输入一串数学,以回车结束,每个数字在数组中占一个位置?

c++中,输入整数时,一定会以空白字符(空格,TAB,回车)结束,而这个空白符号,不会被丢弃,直到有命令去读取。因此,可以,在输入一个数据后,加一个读字符操作,以判断是不是输入结束:读到的字符是回车,则结束读数据,否则,继续读下一个数据。

参考代码:

#include <iostream>
using namespace std ;
void main()
{
    int a[100];
    int i=0,n;
    while(i<100)
    {
        cin >> a[i++] ;
        if ( cin.get() == '\n' ) //遇到回车,结束输入
        {
            break;
        }
    }
    n=i;//记录输入个数
    for( i=0; i<n; i++ ) //按输入个数,输出读入的数据
    {
        cout << a[i] << " ";
    }
}

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-08
先 gets 到 char数组
然后再循环 一个一个转到 int 数组
int a[100];
char s[100];
int i;
gets();
i = 0;
while(i<100)
{
a[i] = s[i] - '0';
}本回答被提问者和网友采纳
第2个回答  2011-11-03
scanf("%d",a[i])
相似回答