Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cetak aksara pertama dan terakhir setiap perkataan dalam rentetan

Cetak aksara pertama dan terakhir setiap perkataan dalam rentetan

WBOY
WBOYke hadapan
2023-08-29 11:25:06900semak imbas

Cetak aksara pertama dan terakhir setiap perkataan dalam rentetan

Pengenalan

Rentetan C++ ialah storan bersebelahan aksara alfanumerik dan aksara khas. Rentetan mempunyai sifat berikut −

  • Setiap rentetan C++ dikaitkan dengan panjang tetap.

  • Operasi aksara boleh dilakukan dengan mudah dengan aksara rentetan.

  • Rentetan terdiri daripada perkataan yang dipisahkan oleh ruang.

Dalam artikel ini, kami akan membangunkan kod yang mengambil rentetan sebagai input dan memaparkan aksara terakhir setiap perkataan dalam rentetan. Mari lihat contoh di bawah untuk memahami topik ini dengan lebih baik -

Contoh Contoh

Contoh 1 −

str − “Key word of a string”</p><p>Output − Ky wd of aa sg

Sebagai contoh, dalam perkataan keempat rentetan ini, hanya satu aksara "a" muncul, jadi ini ialah aksara pertama dan terakhir rentetan ini.

Dalam artikel ini, kami akan membangunkan kod untuk mengekstrak aksara terakhir setiap perkataan menggunakan pengendali indeks. Di sini kami akan membangunkan kod yang menggunakan pengendali indeks untuk mengekstrak aksara terakhir setiap perkataan dan mengakses aksara sebelumnya secara berasingan.

Sintaks

str.length()
Terjemahan

length()

ialah:

length()

Kaedah length() dalam C++ digunakan untuk mengira bilangan aksara dalam rentetan Kaedah length() terbina berfungsi dalam masa linear.

Algoritma

  • Menerima rentetan input, str.

  • Kira panjang rentetan menggunakan kaedah length() dan simpan dalam pembolehubah len.

  • Gunakan untuk gelung i untuk melakukan lelaran rentetan.

  • Ekstrak dan simpan aksara khusus rentetan dalam pembolehubah ch.

  • Setiap kali watak pada kedudukan ke-i diekstrak

  • Jika indeks ini bersamaan dengan indeks pertama rentetan, ia dicetak

  • Jika indeks ini sama dengan indeks terakhir rentetan, len-1 aksara dipaparkan.

  • Jika aksara ini bersamaan dengan aksara ruang, maka aksara indeks i-1 akan dipaparkan, kerana ia adalah aksara terakhir bagi perkataan sebelumnya.

  • Indeks i+1 juga dicetak kerana aksara pertama perkataan seterusnya.

Contoh

Coretan kod C++ berikut digunakan untuk memasukkan rentetan sampel dan mengira aksara pertama dan terakhir bagi setiap perkataan dalam rentetan −

//including the required libraries
#include<bits/stdc++.h>
using namespace std;
//compute the first and last characters of a string 
void  wordfirstandlastchar(string str) {
   // getting length of the string 
   int len = str.length();
    
   for (int i = 0; i <len ; i++) {
      char ch = str[i];
      //print the first word of the string 
      if (i == 0)
         cout<<ch;
 
      //last word of the string
      if (i == len - 1)
         cout<<ch;
 
      //if a space is encountered, marks the start of new word 
      if (ch == ' ') {
         //print the previous character of the last word 
         //print the next character of the next word 
         char lst = str[i-1];
         char nxt = str[i+1];
         cout<<lst<<" "<<nxt;
      }
   }
}
 
//calling the method
int main() {
   //taking a sample string 
   string str = "I want to learn at TutorialsPoint";
   cout<<"Input String : "<< str <<"\n"; 
   //getfirstandlast characters
   cout<<"First and last words of each string : \n";
   wordfirstandlastchar(str);
}

Output

Input String − I want to learn at TutorialsPoint
First and last words of each string − 
II wt to ln at Tt

Kesimpulan

Dalam rentetan C++, kebanyakan operasi aksara boleh dilakukan dengan melintasi rentetan dalam satu laluan. Aksara rentetan boleh diakses dengan mudah menggunakan kedudukannya dalam masa yang tetap. Indeks rentetan bermula pada 0 dan berakhir dengan panjang rentetan - 1.

Atas ialah kandungan terperinci Cetak aksara pertama dan terakhir setiap perkataan dalam rentetan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam