求助 关于C++的输入问题
这是一个程序的写入部分 疑惑的是 如果用C风格的写入方法(程序中注释部分) 一点问题没有,二个循环都能把数字读进去 而用C++风格的(见下面代码),换了各种方法,第二个循环打死都写不进去,好像消失了一样
望XDJM们帮我看看 着实郁闷了一下~
#include<iostream>
#include<cstdio>
using namespace std;
const int Max=50;
int a[30],b[30];
int ai,bi;
int i,j;
int findvalue[Max]={2};
int findvalue1[Max]={4};
void input(){
ai=0;bi=0;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
int x;
char ch;
int y;
char bh;
/*while(1)
{
scanf( "%d%c" , &x , &ch );
a[++ai] = x;
if( ch == ' ' ) break; //当数字后面是空格时,说明第一个数输入完毕
}
while(1)
{
scanf( "%d%c" , &x , &ch );
b[++bi] = x;
if( ch != ',' ) break; //当数字后面不是逗号时,说明第二个数输入完毕
}*/
while(cin>>x>>ch)
{
a[++ai]=x;
if(ch==' ') break;
}
while(cin>>y>>bh)
{
b[++bi]=y;
if( bh != ',' ) break;
}
for(int t1=1;t1<=ai;t1++)
cout<<a[t1];
for(t1=1;t1<=bi;t1++)
cout<<b[t1];
}
int main(){
// fun(30);
input();
// swap();
// add();
}