编程论坛
注册
登录
编程论坛
→
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
azzbcc
2012-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
w527705090
2012-12-02 22:03
顶楼上。。
#4
灵夕920329
2012-12-02 22:22
回复 2楼 azzbcc
好厉害呢!哇,以后要多多请教!对我非常有用呢!非常感谢!
#5
灵夕920329
2012-12-02 22:33
回复 2楼 azzbcc
不过好像和我要的有点不符合呢!我要输出来的是整形的,你给我的是字符型的哦!
#6
azzbcc
2012-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
灵夕920329
2012-12-03 11:51
回复 6楼 azzbcc
真的很有用!两个我都用了,非常感谢你哦!
1