標題:
C++ 字串分割 (一)
[打印本頁]
作者:
tonyh
時間:
2022-10-22 16:05
標題:
C++ 字串分割 (一)
本帖最後由 tonyh 於 2022-12-15 19:35 編輯
試將字串 "123.45.6789" 以 "." 作為分割的依據進行分割,並將分割結果存入一陣列。
#include<bits/stdc++.h>
using namespace std;
string str="123.45.6789";
int data[50];
stringstream ss;
int n;
int main()
{
cin.tie(0);
cin.sync_with_stdio(0);
//cout<<str<<endl;
replace(begin(str),end(str),'.',' ');
//cout<<str<<endl;
ss<<str;
int index=0;
while(ss>>n)
{
data[index]=n;
index++;
}
for(int i=0; i<index; i++)
cout<<data[i]<<endl;
return 0;
}
複製代碼
#include<bits/stdc++.h>
using namespace std;
string str="123.45.6789";
stringstream ss;
int n;
int main()
{
cin.tie(0);
cin.sync_with_stdio(0);
//cout<<str<<endl;
replace(str.begin(),str.end(),'.',' ');
//cout<<str<<endl;
ss<<str;
while(ss>>n)
cout<<n<<endl;
return 0;
}
複製代碼
#include<bits/stdc++.h>
using namespace std;
string str="123.45.6789";
stringstream ss;
int n, index=0, data[100001];
int main()
{
cin.tie(0);
cin.sync_with_stdio(0);
replace(str.begin(),str.end(),'.',' ');
ss<<str;
while(ss>>n)
{
data[index]=n;
index++;
}
for(int i=0; i<index; i++)
cout<<data[i]<<endl;
return 0;
}
複製代碼
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
string str="123.45.6789";
str+=".";
string res[50];
int index=0;
string tmp="";
for(int i=0; i<str.size(); i++)
{
if(str[i]=='.')
{
res[index]=tmp;
tmp="";
index++;
}else
{
tmp+=str[i];
}
}
for(int i=0; res[i]!=""; i++)
cout<<res[i]<<endl;
system("pause");
return 0;
}
複製代碼
作者:
李沛昂
時間:
2022-12-15 19:53
#include<bits/stdc++.h>
using namespace std;
int main()
{
string str="123.45.6789";
stringstream ss;
int n;
cin.tie(0);
cin.sync_with_stdio(0);
replace(str.begin(),str.end(),'.',' ');
ss<<str;
while(ss>>n)
cout<<n<<endl;
return 0;
}
複製代碼
作者:
黃宥華
時間:
2022-12-15 19:53
#include<bits/stdc++.h>
using namespace std;
string str="123.45.6789";
int data[100];
stringstream ss;
int n,in=0;
int main()
{
cin.tie(0);
cin.sync_with_stdio(0);
cout<<str<<endl;
replace(begin(str),end(str),'.',' ');
ss<<str;
while(ss>>n){
data[in]=n;
in++;
}
for(int i=0;i<in;i++){
cout<<data[i]<<endl;
}
return 0;
}
複製代碼
作者:
黃宇綸
時間:
2022-12-15 19:58
#include<bits/stdc++.h>
using namespace std;
#define ll long long
//#define int ll
#define FOR(i,a,b) for(int i=a;i<b;i++)
#define REP(i,n) FOR(i,0,n)
#define REP1(i,n) FOR(i,1,(n)+1)
#define RREP(i,n) for(int i=(n)-1;i>=0;i--)
#define f first
#define s second
#define pb push_back
#define ALL(x) x.begin(),x.end()
#define SZ(x) (int)(x.size())
#define SQ(x) (x)*(x)
#define pii pair<int,int>
#define Graph vector<vector<int>>
#define IOS() cin.sync_with_stdio(0),cin.tie(0),cout.tie(0)
const ll inf=(1ll<<63)-1;
const int maxn=1e5+5;
const ll mod=1e9+7;
string s="123.45.6789";
int n;
stringstream ss;
vector<int> v;
signed main()
{
IOS();
replace(ALL(s),'.',' ');
ss<<s;
while(ss>>n) {
v.pb(n);
}
REP(i,SZ(v)) cout<<v[i]<<"\n";
return 0;
}
複製代碼
作者:
黃宇瑄
時間:
2022-12-15 20:04
#include<bits/stdc++.h>
using namespace std;
int main()
{
string str="123.45.6789";
str+=".";
string res[50];
int index=0;
string tmp="";
for(int i=0; i<str.size(); i++)
{
if(str[i]=='.')
{
res[index]=tmp;
tmp="";
index++;
}else
{
tmp+=str[i];
}
}
for(int i=0; res[i]!=""; i++)
cout<<res[i]<<endl;
return 0;
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/)
Powered by Discuz! 7.2