注册 登录
编程论坛 C++教室

c++ 关于以输入enter结束的问题

灵夕920329 发布于 2012-12-02 17:04, 422 次点击
输入一串数字及符号,例如:1,2,3,4,5,10,100  
要求:将上面的数值以数组形式表示出来。
即:a[0] = 1;
    a[2] = 2;
    .....
    a[7] = 100;
希望求一个程式码,实现以上过程。
谢谢
7 回复
#2
azzbcc2012-12-02 19:36
懒了点,额
程序代码:
#include <iostream.h>
#include <string.h>
int main()
{
    char *chars = new char[50];
    cin >>chars;

    char *p = strtok(chars, ",");
    for (int i = 0;;i++)
    {
        if (!p)        break;
        cout<< "a[" << i
            << "] = " << p <<endl;
        p = strtok(NULL, ",");
    }
    delete []chars;
    return 0;
}
#3
w5277050902012-12-02 22:03
顶楼上。。
#4
灵夕9203292012-12-02 22:22
回复 2楼 azzbcc
好厉害呢!哇,以后要多多请教!对我非常有用呢!非常感谢!
#5
灵夕9203292012-12-02 22:33
回复 2楼 azzbcc
不过好像和我要的有点不符合呢!我要输出来的是整形的,你给我的是字符型的哦!
#6
azzbcc2012-12-02 23:38
程序代码:
#include <iostream.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    char *chars = new char[50];
    cin >>chars;
    int a[10];
    //唉,偷个懒也被批

    char *p = strtok(chars, ",");
    for (int i = 0;;i++)
    {
        if (!p)        break;
        a[i] = atoi(p);
        cout<< "a[" << i
            << "] = " << a[i] <<endl;
        p = strtok(NULL, ",");
    }
    delete []chars;
    return 0;
}
#7
逸枫2012-12-03 02:43
证明不能偷懒
#8
灵夕9203292012-12-03 11:51
回复 6楼 azzbcc
真的很有用!两个我都用了,非常感谢你哦!
1