logo

Pridobite podniz v C

Glede na niz str in poz in samo ki določa začetek in dolžino podmatrike. Naloga je ustvariti podniz velikosti samo začenši z indeksom poz .

A podniz je sosednje zaporedje znakov znotraj niza.



hiba bukhari

Primeri:

Vnos: Str =, pos=1, len=2
Izhod: th
Pojasnilo: podnizi bodo: , t, h, e, th, on, the.

Vnos: Str =geeks, pos=3, dolžina=3
Izhod: npr
Pojasnilo: podnizi so: , g, e, e, k, s, ge, ee, ek, ks, gee, eek, ex, geek, eeks, geeks.



Pristop: Težavo je mogoče rešiti na naslednji način:

Ustvarite niz znakov in vnesite znake, ki se začnejo od poz v niz znakov, da ustvarite podniz.

Za uresničitev ideje sledite spodnjim korakom:



  • Ustvarite niz znakov za shranjevanje podniza.
  • Ponovite od danega položaja za dano dolžino, da ustvarite zahtevani podniz.
    • Nato shranite vsak znak v matriko znakov in natisnite podniz.

Za boljše razumevanje sledite spodnji sliki.

Ilustracija:

Razmislite o nizu str=abcde , položaj = 2 , samo = 3 .

=> Pri i = 2 naš ans = c .

=> Pri i = 3 je znak 'd'.
Zato odgovoru dodajte 'd'.
Naša leta = cd

=> Pri i = 4 je znak 'e'.
Zato odgovoru dodajte 'e'.
Ura ans = cde .

Spodaj je implementacija zgornjega pristopa.

C

koliko nič za en milijon


java int za podvojitev



// C implementation of code> #include> #include> // Function to get substr in C> void> getString(>int> pos,>int> len,>int> c,>char> string[])> {> >char> substring[1000];> >while> (c substring = string[pos + c - 1]; c++; } substring = ' '; // Print the result printf(substring); printf(' '); return 0; } // Driver code int main() { int pos, len, c = 0; // Testcase1 char string[14] = 'geeksforgeeks'; // Initialize pos, len i.e., starting // index and len upto which we have to // get substring respectively. pos = 6; len = 5; printf('String: %s ', string); printf(' substring is: '); // Function call getString(pos, len, c, string); // Testcase2 char string2[5] = 'abcde'; pos = 1; len = 3; c = 0; printf(' String: %s ', string2); printf(' substring is: '); // Function call getString(pos, len, c, string2); return 0; }>

>

>

Izhod

String: geeksforgeeks substring is: forge String: abcde substring is: abc>

Časovna zahtevnost: O tem
Pomožni prostor: O tem

Uporaba funkcije strncpy() v C

Uporabimo lahko tudi funkcijo strncpy() v C za kopiranje podniza iz podanega vhodnega niza. Potrebuje 3 parametre, ki so ciljni niz, izvorni niz skupaj z začetnim indeksom in dolžino podniza, ki ga moramo kopirati.

regexp_like v mysql

Sintaksa:

strncpy(ciljni_niz,vhodni_niz+pos,len);

Tukaj poz je začetni indeks in samo je dolžina podniza, ki ga želimo kopirati.

Spodaj je koda za zgornji pristop.

C

niz json java




// C implementation of code> #include> #include> // Driver code> int> main()> {> >int> pos, len;> >// Testcase1> >char> string[14] =>'geeksforgeeks'>;> >char> substring[14];> >// Initialize pos, len i.e., starting> >// index and len upto which we have to> >// get substring respectively.> >pos = 6;> >len = 5;> >printf>(>'String: %s '>, string);> >printf>(>' substring is: '>);> >// Using strncpy function to> >// copy the substring> >strncpy>(substring,string+(pos-1),len);> >printf>(substring);> >// Testcase2> >char> string2[5] =>'abcde'>;> >char> substring2[5];> > >pos = 1;> >len = 3;> >printf>(>' String: %s '>, string2);> >printf>(>' substring is: '>);> >// Using strncpy function to> >// copy the substring> >strncpy>(substring2,string2+(pos-1),len);> >printf>(substring2);> >return> 0;> }> // This code is contributed by Pushpesh Raj.>

>

>

Izhod

String: geeksforgeeks substring is: forge String: abcde substring is: abc>

Časovna zahtevnost: O tem
Pomožni prostor: O tem