解题思路:
输入一个字符串,在遇到非*号之前,把*号都添加到a字符串中,搞定前导*后,直至字符串尾,只添加非*号字符
注意事项:
如样例: ****a*bc*def*g**** 前导*号为: s[0]-----s[3]的四个* 如样例: a*bc*def*g**** 没有前导*号
参考代码:
#include<iostream> #include<string> using namespace std; int main(){ string s,a; cin >> s; int k = s.size(); bool flag1 = 1;//控制前导*号的,为1,说明当前字符还是前导*,可以继续添加,否则就不添加了 for (int i = 0; i < k; i++){ //判断不是前导*了,之后就不再添加*号了,遇到*号不添加 if (s[i] != '*'&&flag1){ flag1 = 0; a += s[i]; continue; } //还是前导*号的时候,遇到*都添加 else if (flag1){ a += s[i]; } 不再是前导*号了,就只添加除了*号以外的字符 else{ if (s[i] != '*')a += s[i]; } } cout << a; system("pause"); return 0; }
0.0分
1 人评分
点我有惊喜!你懂得!浏览:971 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:552 |
printf基础练习2 (C语言代码)浏览:591 |
【偶数求和】 (C++代码)浏览:702 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:936 |
WU-图形输出 (C++代码)浏览:800 |
简单的a+b (C语言代码)浏览:626 |
出圈】指针malloc版浏览:355 |
数组输出 (C语言代码)浏览:700 |
整数平均值 (C语言代码)浏览:777 |