Programação Imperativa

100 Questões Fichas Testes/Exames

Questão 9: strcmp

Voltar

Apresente uma definição da função pré-definida em C int strcmp (char s1[], char s2[]) que compara (lexicograficamente) duas strings. O resultado deverá ser:

  • 0 se as strings forem iguais;
  • <0 se s1 < s2;
  • >0 se s1 > s2.

Exemplo

> strcmp("Programacao", "Imperativa")
(int) 1 // por exemplo, mas podia ser qualquer inteiro > 0
> strcmp("string", "string")
(int) 0

Resolução

int strcmp(char s1[], char s2[]) {
    int N = 0;
    while(s1[N] && s1[N] == s2[N]) N++;
    return s1[N] - s2[N];
}