Форум программистов, компьютерный форум CyberForum.ru

определить количество слов в тексте, оканчивающихся на гласную букву - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как связаны собственные значения и векторы матриц А и А^5? http://www.cyberforum.ru/cpp-beginners/thread273991.html
помогите пожалуйста решить вот такую задачу(очень срочно надо):как связаны собственные значения и векторы матриц А и А^5 ?
C++ Найти сумму элементов массива с нечетными номерами Просьба помочь/дописать программу под условие задания (смотреть пр. файл) :(( Задание: H - сумма элементов массива с нечетными номерами E - максимальный по модулю элемент массива G - Количество отрицательных элементов массива (H+E/(H+1))*G http://www.cyberforum.ru/cpp-beginners/thread273987.html
C++ работа с двумерными массивами
Здравствуйте, нужна помощь переделать программу под условие (смотреть пр. файл) :( Задание: Дана прямоугольная матрица Определить: 1. количество столбцов, не содержащих ни одного нулевого элемента 2. сумма положительных четных элементов каждой строки
C++ ОБНУЛЯЕТСЯ ДРОБНАЯ ЧАСТЬ ПРИ СОРТИРОВКЕ МАССИВА!!!
Массив B сформировать по правилу b = sqrt(fabsf(i * i - a)), где a=25.8. Найти сумму элементов с номерами с 5-го по 10-ый, упорядочить эти элементы по убыванию и найти произведение элементов Bi < 8.5. Все я сделал, но почему-то при сортировке массива дробная часть обнуляется. Почему так происходит? #include "stdafx.h" #include "iostream" #include "conio.h" #include "stdlib.h" #include...
C++ Модификация записи в файле структур http://www.cyberforum.ru/cpp-beginners/thread273956.html
Необходимо удалить запись из произвольной точки файла. Написал код: void delete_record() { SONG tmp; // #define SONG_SIZE sizeof(SONG) long delete_item_pos = (current_start + (current_line -3 ) / 2) * SONG_SIZE; long next_item = delete_item_pos + SONG_SIZE; if (delete_item_pos < file_size * SONG_SIZE) { while (next_item < (file_size * SONG_SIZE)) {...
C++ Разработать тип данных graf, определив для него операции добавления и вычитания помогите срочно нужно!!! разработать тип данных graf, определив для него операции добавления и вычитания!! подробнее

Показать сообщение отдельно
Larka91
0 / 0 / 0
Регистрация: 02.10.2010
Сообщений: 27

определить количество слов в тексте, оканчивающихся на гласную букву - C++

10.04.2011, 23:09. Просмотров 713. Ответов 0
Метки (Все метки)

И еще одна программа ... ((( можно ли переделать под условие (смотри пр файл.)

Задание:

С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000 символов (длина строки текста не должна превышать 70 символов).
Имя файла должно иметь расширение DAT.
Написать программу, которая:
1) выводит текст на экран дисплея;
2) определяет количество слов в тексте, оканчивающихся на гласную букву

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <stdio.h>
#include <conio.h>
/* #include <string.h> */
 
#define DELIM " \t\n,.!?:;-%"
#define VOWELS "AaEeIiOoUuYy"
        
int mystrlen(const char * s){
        const char * p = s;
        while ( *p )
                ++p;
        return p - s;
}
 
char * mystrchr(const char * s, char ch){
        while ( *s && *s != ch )
                ++s;
        return ( *s ) ? (char*)s : NULL;
}
 
char * mystrtok(char * buf, const char * delim){
        static char * pHead, * pTail, * pRet;
        if ( buf ){
                pHead = buf;
                pTail = pHead + mystrlen(pHead);
                for ( pRet = pHead; pRet < pTail; ++pRet )
                        if ( mystrchr(delim, *pRet) )
                                *pRet = 0;
        }
        while ( ! *pHead && pHead < pTail )
                ++pHead;
        if ( pHead >= pTail )
                return NULL;
        else {
                pRet = pHead;
                pHead += mystrlen(pHead);
        }
        
        return pRet;
}
 
int main(void){
        char buf[BUFSIZ], *p;
        int cnt;
        FILE * f;
        
        printf("File name: ");
        if ( scanf("%s", buf) != 1 ){
                fprintf(stderr, "Input error!\n");
                return 1;
        }
        
        if ( ( f = fopen(buf, "r") ) == NULL ){
                fprintf(stderr, "Can't open file for input!\n");
                return 1;
        }
        
        cnt = 0;
        printf("Content:\n\n");
        while ( fgets(buf, BUFSIZ, f) ){
                printf("%s", buf);
                for ( p = mystrtok(buf, DELIM); p; p = mystrtok(NULL, DELIM) )
                        if ( mystrchr(VOWELS, p[mystrlen(p) - 1]) )
                                ++cnt;
        }
        if ( ferror(f) ){
                fprintf(stderr, "Error while reading file!\n");
                if ( fclose(f) )
                        fprintf(stderr, "Can't close file!\n");
                return 1;
        }
        
        fclose(f);
        printf("\n\n%d words ends with vowel letter.\n", cnt);
        
        getch();
        
        return 0;
}
Миниатюры
определить количество слов в тексте, оканчивающихся на гласную букву  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru