在 C++ 中列印連續字元
在這個問題中,我們得到一個字元字串,我們必須以這樣的方式列印相同的字串:如果兩個或多個字元是連續的,則在一行中一起列印它們;否則,在不同的行中列印它們,即換行。
讓我們舉個例子來更好地理解這個概念:
Input : abcxstk Output : abc x st k
說明 − 由於 **abc** 是按順序排列的,因此它們在一行中列印。然後是 x,它不是按順序排列的,因此我們在這裡新增一個換行符。接下來是 s,它與 x 不按順序排列,因此我們新增一個換行符。接下來是 t,它與 s 按順序排列,因此按順序列印。接下來是 k,它與 t 不按順序排列,因此我們新增一個換行符。
在這裡,我們將檢查字串中一個元素與其前一個元素。如果它們按順序排列,則正常列印。否則,用 **換行符** 列印元素。
示例
現在,讓我們根據此邏輯建立一個程式
#include <iostream>
using namespace std;
int main(){
string str = "stukfrpq";
cout << str[0];
for (int i=1; str[i]!='\0'; i++){
if ((str[i] == str[i-1]+1) || (str[i] == str[i-1]-1))
cout << str[i];
else
cout << "\n" << str[i];;
}
return 0;
}輸出
stu k f r pq
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP