Како обрнути низ у Ц.

How Reverse String C



У кодирању стрингова, преокрет стрингова је кључна тема. Постоји и неколико метода за преокретање низа, од којих сваки има другачију логику. Овај чланак ће вам показати како правилно преокренути низ да бисте користили неколико различитих приступа и закључивања са и без потребе за било којим унапред постављеним функцијама. Кад год се преокрет технике низа примијени на одређени јединствени улазни низ, текст који би потрошач дао у одређеном редослиједу бит ће потпуно обрнут. У доњем примеру, коришћене су различите алтернативе преокретања низа са Ц.

Приликом имплементације овог водича радили смо на Убунту 20.04 Линук систему конфигурисаном на Виртуал Бок -у. Док смо радили на Линук систему, радили смо већину наших инсталација и упита на терминалној љусци. Стога отворите окно терминала пречицом Цтрл+Алт+Т или је претражите путем траке за претрагу апликације испод подручја активности на Убунту радној површини. Потребно је прво ажурирати систем путем упита за ажурирање апт. Од вас ће се тражити тренутна корисничка лозинка за покретање ажурирања. Дакле, додајте лозинку и притисните тастер Ентер.







$ судо апт упдате



Пошто смо користили програмски језик Ц за разраду концепта преокретања стрингова у систему Убунту 20.04, требало би да је на њиховом Убунту систему инсталиран Ц компајлер. Зато обавезно инсталирајте ГЦЦ компајлер на свој систем путем доњег упита.



$ судо апт инсталл гцц

Пример 01: Коришћење Фор Лооп

Након инсталације и конфигурације ГЦЦ компајлера и ажурирања апт пакета, окреће се креирање нове датотеке. Ова датотека треба да буде типа Ц; стога, користите команду тоуцх за креирање датотеке нев.ц као што је доле. Ова датотека ће се од сада користити у нашем коду током имплементације програма за обрнуте низове.





$ додирните ново.ц

Сада можете отворити ову датотеку за уређивање или кодирање помоћу Нано уређивача који је уграђен у ваш Убунту 20.04 Линук систем. Стога покушајте да урадите доле наведена упутства у својој љусци.



$ нано нов.ц

Новонастала датотека типа Ц нова отворена је у ГНУ Нано Едитор-у система Убунту 20.04. Морате написати Ц скрипту у њу, као што је приказано на слици испод. Дозволите нам да разрадимо овај код ради вашег бољег разумевања. На почетку кода укључили смо две библиотеке. Библиотека стдио.х је коришћена за преузимање уноса и приказивање излаза, а друга библиотека стринг.х је коришћена за коришћење свих врста низова у нашем коду. Сав посао преокретања низа ће се обавити методом маин () Ц кода. Огласили смо низ знакова типа стринг величине 50. То значи да се низ са више од 50 знакова не може забавити у овом коду. Након тога смо прогласили две променљиве целобројног типа. Променљива л је коришћена за прикупљање дужине стринга стр, а променљива И ће се користити као иницијализатор у фор петљи. Затим смо користили испис принтф за испис текста на љусци Ентер стринг, говорећи кориснику да дода вриједност променљивој стринга. Метод сцанф () је коришћен за унос корисника током извођења и чување те вредности у низу стр. Функција стрлен () је коришћена за проверу дужине низа стр коју је додао корисник током извођења и чување у променљивој л ’. Затим смо иницирали фор петљу да бисмо обрнули низ стр. Можете видети да иницијализатор И 'узима вредност из променљиве л да би обрнуо смер низа. Затим штампа знакове низа стр 'један по један преокрет. У последњем, главни метод је окончан. Сачувајте ову датотеку помоћу Цтрл+С и затворите је помоћу Цтрл+Кс.

Сада је време да саставите код и проверите његов излаз. Дакле, компилација је извршена помоћу доле наведеног гцц упита са именом датотеке нев.ц.

$ гцц нов.ц

Како компилација успе, то значи да у нашем коду нема грешке. Извршимо нашу датотеку помоћу а.оут упита у љусци на следећи начин:

$./до.оут

Процес извршавања ће тражити од корисника да дода низ. Додали смо И-Ам-Акса-Иасин и притиснули Ентер. Можете видети да враћа обрнуту страну низа у следећој линији.

Пример 02: Коришћење замене

У овом примеру, користићемо метод замене да бисмо обрнули редослед низа. Стога отворите датотеку нев.ц још једном помоћу нано уређивача на следећи начин:

$ нано нов.ц

Сада је датотека отворена у ГНУ нано уређивачу; морамо да ажурирамо датотеку кода са испод приказаном скриптом на снимку екрана. Стандардну улазну и излазну датотеку заглавља смо прво укључили у наш код користећи кључну реч #инцлуде. Дефинисали смо методу Реверсе () према употреби технике замене. Иницијализовали смо три променљиве целобројног типа нев, И и свап. Прва фор петља се користи за проверу да ли је низ с празан или не. Следећа фор петља се користи за итерацију, ау њеном телу смо заменили вредности користећи нове и свап променљиве. Вреди напоменути да преокретање низа дужине н траје само н/2 круга. Једном када се замене низови, мораћете поново да прођете петљу да бисте приказали обрнути низ, што радимо у нашој апликацији користећи трећу фор петљу. Функција Реверсе () мора се позвати из главног програма. Навели сте шта ваш софтвер ради са принтф -ом у контексту маин (). Након тога сте користили сцанф () за унос корисника и позвали методу Реверсе (). Сада сачувајте датотеку поново помоћу Цтрл+С и напустите нано едитор Цтрл+Кс пречицом и вратите се у окно терминала.

Прво компајлирајте код помоћу гцц упита као што је доле.

$ гцц нов.ц

Сада извршите датотеку кода користећи исту ./а.оут инструкцију.

$./до.оут

Од вас ће се тражити да унесете вредност низа. Додали смо АксаИасин и добили обрнуто.

Пример 03: Коришћење рекурзије

У овом примеру, користићемо рекурзију за поништавање низа који је додао корисник. Зато поново отворите датотеку.

$ нано нов.ц

Овај програм штампа Унесите реченицу: Затим се користи метода Реверсе (). Почетно слово које је унео корисник спрема се у ц помоћу ове методе. Реверсе () се поново извршава ако је аргумент нешто друго осим н (нови ред). Ова процедура се наставља све док корисник не притисне тастер Ентер. Кад год корисник притисне ентер, метода Реверсе () штампа текст обрнутим редоследом. Сачувајте и затворите датотеку.

Прво компајлирајте код, а затим га покрените помоћу претходних наредби на следећи начин:

$ гцц нов.ц

$./до.оут

Можете видети да узима унос од корисника као целе реченице, а затим да обрне редослед те реченице.

Закључак:

Коначно, урадили смо три примера за разраду преокретања уноса типа низа различитим методама, на пример, коришћењем фор петље, коришћењем рекурзије и употребом свап -а.