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

求助!c++中,要输入一串数字,以任何一个字母为结束标志,怎么做?

carlbiao 发布于 2008-04-26 15:17, 2370 次点击
求助!
c++中,要输入一串数字,以任何一个字母为结束标志
怎么做?
输入的是整数
0~100000范围的整数……
我想用cin>>n来判断
为什么总是错?
int i=0,int a[MAX];
    while(!cin>>a[i])
     {
           cin>>a[i];
         i++;
     }  
    cout<<"实际输入了"<<i<<endl;

键盘输入如下:

1
2
3
4
5
6
7
k
实际输入了4
2
4
6
7

这是为什么?
2 回复
#2
sunkaidong2008-04-26 16:57
while(!cin>>a[i++])
     {
           cin>>a[i++];
         //i++;
     }
#3
readyforlove2008-05-01 08:46
#include <iostream.h>
#include <ctype.h>
const int MAXNUM=100;
void main()
{
    int i=0,j,a[MAXNUM];char ch;
    cin>>ch;
    while(isdigit(ch))
    {
        a[i++]=ch-48;
        cin>>ch;
    }
    for(j=0;j<i;j++)
        cout<<a[j];
    cout<<endl;
}
1