題目描述:將一個字符中所有出現的數字前后加上符號“*”,其他字符保持不變
輸入描述:輸入一個字符串
輸出描述:字符中所有出現的數字前后加上符號“*”,其他字符保持不變
輸入例子:Jkdi234klowe90a3
輸出例子:Jkdi*234*klowe*90*a*3*
算法實現:
#include<iostream> #include<string>using namespace std; //************************************************ // * Author: 趙志乾 // * Date: 2017-2-20 // * Declaration: All Rigths Reserved !!! //***********************************************/ bool IsNumber(char c){ return c>='0'&&c<='9';} int main() { string instr; getline(cin,instr); if(IsNumber(instr[0])) cout<<"*"+instr.substr(0,1); else cout<<instr.substr(0,1); for(int i=1;i<instr.length();i++) { if(IsNumber(instr[i])&&IsNumber(instr[i-1])) { cout<<instr.substr(i,1); } else if(!IsNumber(instr[i])&&!IsNumber(instr[i-1])) { cout<<instr.substr(i,1); } else { cout<<"*"+instr.substr(i,1); } } if(IsNumber(instr[instr.length()-1])) { cout<<'*'; } cout<<endl; return 0; }
新聞熱點
疑難解答
圖片精選