已知一個摻雜了多個數字字符的中文名拼音,去掉所有數字字符之后,形式為“名”+空格+“姓”;并且名和姓的首字母大寫,其他小寫,要求輸出姓名全拼,且全為小寫。(后附詳細樣例說明)
【輸入形式】
一個字符串,長度小于100,含一個空格,如3N32a4ns234ha89n0 Z23hon4g66
【輸出形式】
去掉字符串種的所有數字字符,形成形式為”名“+空格+”姓“的中文名之后,再轉換為全為小寫的姓名全拼,如zhongnanshan
【樣例輸入】
3N32a4ns234ha89n0 Z23hon4g66
【樣例輸出】
zhongnans
思路:首先定義string變量a、b,分別存儲空格前和空格后的字符串,然后獲取字符串長度,然后依次遍歷兩個string變量a和b,如果為字母,則存入char變量xin、ming中,然后輸出的時候xin和ming字符數組里面的字母遍歷,以小寫字母輸出即可。
#include <iostream>
#include <string>
using namespace std;int main()
{string a,b;int A,B,i,j;char xin[101],ming[101];cin >> a >> b;A = a.length();B = b.length();//cout << A<< " ";//cout <<B;//cout << endl;b.copy(xin,B,0);a.copy(ming,A,0);for(j=0;j<B;j++){if((xin[j]>= 'a' && xin[j]<='z') || (xin[j]>= 'A' && xin[j]<='Z')){if(xin[j]>= 'A' && xin[j]<='Z'){xin[j] = xin[j] + 32;}cout << xin[j];}}//cout << endl;for(i=0;i<A;i++){if((ming[i]>= 'a' && ming[i]<='z') || (ming[i]>= 'A' && ming[i]<='Z')){if(ming[i]>= 'A' && ming[i]<='Z'){ming[i] = ming[i] + 32;}cout << ming[i];}}return 0;
}
運行結果: