Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/2: Рейтинг темы: голосов - 2, средняя оценка - 4.50
Карен99
0 / 0 / 1
Регистрация: 12.05.2016
Сообщений: 2
1

Посимвольное считывание строки, нужны комментарии

12.05.2016, 05:00. Просмотров 450. Ответов 1
Метки нет (Все метки)

Кто-нибудь может пожалуйста объяснить построчно,что делает эта программа?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
 
int isLatin(char c) {
    return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
}
 
int countWords(char* buffer) {
    int isLastLatin = 0;
    int count = 0;
    for(int i = 0; i < 256 ; i++) {
        if (buffer[i] == 'a' && isLastLatin != 1) {
            count++;
        }
        isLastLatin = isLatin(buffer[i]);
    }
    
    return count;
}
 
int main() {
    char buffer[256];
    printf("vvedite stroku \n");
    gets(buffer);
    
    int count = countWords(buffer);
    
    printf("Words with a = %d\n", count);
    
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2016, 05:00
Ответы с готовыми решениями:

Посимвольное считывание строки из файла
Прошу помощи, хотелось бы считать строку из файла (в котором много строк) посимвольно и записать...

Посимвольное считывание из файла - в конце строки появляется символ "Я"
Здравствуйте! Который раз сталкиваюсь с этой проблемой! Нужно считать информацию из файла и...

Посимвольное считывание файла
Как считать файл посимвольно? Файл состоит из 1-й строки и включает в себя цифры разделённые...

Посимвольное считывание файла
Почему вместе с символами, записанными в файле, считываются какие-то еще? int i=0,n,sum; char*...

Посимвольное считывание в структуру
Добрый вечер. Необходимо написать программу, которая считывает данные из текстового файла в...

1
LFC
730 / 535 / 416
Регистрация: 17.09.2015
Сообщений: 1,598
12.05.2016, 07:40 2
Карен99,
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
 
int isLatin(char c) //функция определяет является ли символ латинской буквой
{
    return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');//если является,возвращает 1
}                                                           //если нет то 0
int countWords(char* buffer)//функция подсчитывает слова
{
    int isLastLatin = 0;
    int count = 0;
    for(int i = 0; i < 256 ; i++) {//для чего условие цикла до 256 я не знаю, я бы поставил buffer[i] != \0;
        if (buffer[i] == 'a' && isLastLatin != 1)//если текущий символ есть латинская буква 'a' и 
            count++;                  //предыдущий символ не является латинской буквой,то счетчик увеличивается на 1
        isLastLatin = isLatin(buffer[i]);//если текущий символ buffer[i] является латинской буквой
    }                   //то переменной isLastLatin присваивается значение 1,если нет то 0
    return count;//функция возвращает значение счетчика count
}
int main() {
    char buffer[256];//выделена память под строку на 255 символов плюс завершающий нуль
    printf("vvedite stroku \n");
    gets(buffer);//пользователь вводит строку
    int count = countWords(buffer);//переменной count присваивается возвращаемое значение функции countWords
    printf("Words with a = %d\n", count);//и оно выводится на экран
    return 0; //программа сообщает в ОС что ее работа завершена корректно
}
если эта программа должна подсчитывать количество слов с буквой а,то код не верный,
что она подсчитывает на самом деле-для меня загадка
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2016, 07:40

Посимвольное считывание с файла не работает
Проблема решена заменой на while (!feof(analyzedFile)) { ch = fgetc(analyzedFile); ...

Посимвольное считывание с файла и запись в массив
Всем привет, подскажите, правильно ли я выполняю посимвольное(Нужно считывать, не зная заранее...

Нужны комментарии к коду
#include&lt;stdio.h&gt; #define N 100 int main() { int mas; int mas2; int nyll; int str; int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru