Печать строчных и прописных букв и количества цифр - PullRequest
0 голосов
/ 20 октября 2018
#include<stdio.h>

int main() { 
   char text[1000];
   int ch;
   int index = 0;

   while ((ch = getchar()) != EOF) {
      text[index] = ch;
      index++;
   }
   text[index] = '\0';

   int i =0;
   int num_Count=0; 
   int lower_Count=0; 
   int upper_Count =0;

   while(i < index) {
    if((text[i]>='0') && (text[i]<='9')){
        num_Count ++;
        i++;
    }
    else if((text[i]>='A') && (text[i]<='Z')){
        upper_Count++;
        i++;
    }
    else if((text[i]>='a') && (text[i] <='z')){
        lower_Count++;
        i++;
    }
    else
        i++;
}
printf("%d %d %d", num_Count, lower_Count, upper_Count);
return 0;
}

Это программа, которая выводит число строчных, прописных и цифр при вводе предложения.Например,

Hi
Name
100 

выдаст 3 4 2

Я продолжаю видеть ошибку времени выполнения.(Пока) часть кажется неправильной .. Я не знаю, что не так.

Ответы [ 2 ]

0 голосов
/ 20 октября 2018

EOF означает конец файла.Используется при чтении данных из файла.Я предлагаю поставить символ, такой как перевод строки ('\ n').

0 голосов
/ 20 октября 2018

Я запустил ваш код в моей системе и проверил на ввод: Hi Name 100.Вывод, который я получил, - 3 4 2, который является ожидаемым результатом.Я чувствую, что единственное место, где код может выполняться в бесконечном цикле, - это чтение входных данных.Попробуйте использовать ctrl + d для EOF или ctrl + z для Windows.

Отдохните всев порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...