• Компютри и Електроника
  • Програмиране

Как да се сравнят две струни в C език за програмиране

Поредицата е по-малък лексикографски по-малко (тя започва с писма, че от началните букви на други предния ред в речника).

Стъпки

  1. Как да се сравнят две струни в C език за програмиране
  2. Обърни библиотечни струни в молбата Ви. Тази библиотека съдържа много полезни функции, използвани при работа с низове, включително един, който ги сравнява. Поставете следния код в горната част на програмата, включена с други отбори. включва LT; string.hgt;

  3. Как да се сравнят две струни в C език за програмиране
  4. Обявете низови променливи. Тя ще се подредят ще сравнявате. Имайте предвид, че низове в C са декларирани като масиви от символи, а не като специален тип низ. Чар string1 [граница, string2 [лимит; // Сменете граница с максималната дължина на струните

  5. Преценете колко знака, който искате да сравните.
    • Колкото повече се сравни, толкова по-точни ще стигнете (например, ако редовете и Hell Здравейте, и вие в сравнение с четири цифри, те ще изглеждат добре).

    • Ако сравним много знаци, на цени ще бъде по-бавно.

    • Не е необходимо да се направи този номер по-голям от дължината на низ (няма знаци за сравнение, когато приключи).


    • Как да се сравнят две струни в C език за програмиране
    • Създаване на променлива, която съдържа броя на символите за сравнение.INT compareLimit = 100; // Тук, ограничението е 100. Въпреки това, може да го промени да отговарят на вашите нужди.

    • Как да се сравнят две струни в C език за програмиране
    • Инициализира низ. Можете да зададете стойност ръчно, тя взема от входа, вземете от файл ...

    • Как да се сравнят две струни в C език за програмиране
    • Сравнете линията. Сравнението се извършва с помощта strncmp (), но връща цяло число тип - цяло число. INT резултат = strncmp (string1, string2, compareLimit);

    • Проверка на резултатите. Ако е положителен, на първа линия - повече. Ако тя е отрицателна, а вторият - повече. Ако е 0, а след това те са равни. ако (резултат при 0) ФОРМАТ (string1 GT; string2); иначе, ако (резултат LT; 0) ФОРМАТ (string2 GT; string1); друго ФОРМАТ (string1 == string2);

    Примерен код

    Програма, която да отговаря на прости въпроси ("Как се казваш?, Как сте? Какво мислите за WikiHow?)

    #include LT; stdio.hgt; #include LT; string.hgt; INT главната () {ФОРМАТ (Hello Питай ме един въпрос \ N!!); докато (1) {Чар str0; scanf (% S, ул); INT ВЕИ = strncmp (ул, как се казваш, 100?); ако (ВЕИ == 0) ФОРМАТ (аз съм една програма, аз не разполагат с име \ N!); ВЕИ = strncmp (ул, Как сте, 100?); ако (ВЕИ == 0) ФОРМАТ (Fine \ N.); ВЕИ = strncmp (ул Какво мислите за wikiHow, 100?); ако (ВЕИ == 0) ФОРМАТ (Това е страхотно!); }}

    Съвет

    • Тази функция може да се използва в изложението ако.

    • Параметър CompareLimit уточнява strncmpmaksimalnoe герои да се изследват. Използвайте strncmp вместо първоначалния strcmp (както и други процедурата strn * в сравнение с техните ул * допълнения) е един от многото начини, по които програми С могат да бъдат направени по-стабилни и сигурни.

    Предупреждение

    • Не забравяйте, че стойността е 0, ако съответстват на струните. Това може да ви обърка, както и стойността на 0 е FALSE (FALSE).