int转字符串 stringstream

1. 设定一个任意数字串,数出这个数中的偶数个数,奇数个数,及这个数中所包含的所有位数的总数,将答案按 “偶-奇-总” 的位序,排出得到新数。重复进行,最后会得到 123。

 1 #include<iostream>
 2 #include<sstream>
 3 using namespace std;
 4 int main()
 5 {
 6     string s[1000];
 7     cin>>s[0];
 8     int i = 0;
 9     int odd = 0,even = 0;
10     int sum = odd + even;
11     while(1)
12     {
13         odd = 0,even = 0;
14         for(int j = 0 ; j < s[i].length() ; j++)
15         {
16             if((s[i][j]-'0')%2==0)odd++;
17             else even++;
18         }
19         sum = odd + even;
20         i++;
21         stringstream ss;
22         ss<<odd<<even<<sum;
23         ss>>s[i];
24         if(s[i][0]=='1'&&s[i][1]=='2'&&s[i][2]=='3')break;
25     }
26     for(int k = 0 ; k <= i ; k++)cout<<s[k]<<endl;
27 }

 

posted @ 2014-10-07 21:18  DuskL  阅读(551)  评论(0编辑  收藏  举报