Программа на C для проверки, является ли строка панграммой

Строка панграммы - это строка, содержащая предложение, которое охватывает все английские буквы. Я пытаюсь написать функцию, которая проверяет, является ли строка панграммой. Строка обещана быть предложением.

Моя ставка: чтобы унифицировать проверку для каждого символа в строке, я использовал функцию, которая преобразует только строчные буквы в верхние. Я создал строку под названием арсенал, которая включает все буквы на английском языке, так что во время выполнения встреченные буквы будут исключены из этой строки. Num определяется как 27 - длина арсенала

  int IsPangram(char * str){
  char* arsenal = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
   int i, j;

   for (i = 0; str[i] != '\0' ; ++i){
    if (str[i] == ' ')
   continue;

    else if (arsenal [UpCase(str[i]) - 'A'] != '\0'){
        arsenal [UpCase(str[i]) - 'A'] = '\0';
      }

    else continue;
   }

    for (j = 0 ; j < Num; ++j){
          if (arsenal[j] != '\0'){
             return 0;
          }
          else{
                return 1;
        }

     }

   }
   char UpCase(char c)
  {
    if (c < 'z' && c > 'a'){
    return ('A' + (c -'a'));
  }
  else return c;
  }

Проблема: этот код не работает на "Code-Blocks". Спасибо заранее за любую помощь!

0 ответов

Другие вопросы по тегам