Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2012, 00:49   #1
julia9311
Пользователь
 
Регистрация: 23.06.2012
Сообщений: 69
По умолчанию ошибка в работе программы

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


Код:
#include "iostream.h"
#include "fstream.h" 
#include "conio.h"
 
 void glas (char len[51])  
    {  
        
    
        if(len[0] == 'a' || len[0] == 'e' || len[0] == 'i' 
     || len[0] == 'o' || len[0] == 'u');
        
    }
int main()
{
    char len[51];
 
    ifstream infile;//объявление файла
    infile.open("kondratiev.txt");//открытие файла
    infile.close();//закрытие файла
    infile >> len;//завершение программы
    cout << len << endl;
    while(!infile.eof())
getch();
 
    return 0;
 
 
}
Но вместо слов, которые начинаются на гласную почему-то выдает последнее слово в файле и это предупреждение:


C:\Program Files\Microsoft Visual Studio\MyProjects\английские строки\английские строки.cpp(12) : warning C4390: ';' : empty controlled statement found; is this the intent?

В чем дело?
julia9311 вне форума Ответить с цитированием
Старый 27.06.2012, 01:24   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

julia9311

Но вместо слов, которые начинаются на гласную почему-то выдает последнее слово в файле и это предупреждение:

потому что это хрень какая-то а не программа

- сначала закрываем файл, а потом читаем из него данные
- функция glass нигде не используется
- даже если бы использовалась, ничего полезного она не делает, внутри какая-то чушь, которая могла родиться только под совместным действием барбитуратов, хлортетрациклина, растворимого кофе нескафе и энергетика

что нужно делать:

- открыть редактор кода
- вставить туда текст программы
- перевести курсор на последнюю позицию в тексте
- нажать и удерживать клавишу BackSpace
- дождаться момента, когда экран станет пустым
- начать делать программу заново
...
- PROFIT!
Rififi вне форума Ответить с цитированием
Старый 27.06.2012, 07:58   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
warning C4390: ';' : empty controlled statement found;
Это потому что твой if() не имеет тела. Условие имеет, а тела нет.
Программа действительно не дееспособная, придется тебе ее переделывать в корне.
Могу предложить следующую тему:
http://www.programmersforum.ru/showthread.php?t=165196

Или вот такую считку построчно из файла:
Код:
	char s[255];
	FILE *f=fopen("C:\\temp\\bo_dump.txt","r");
	while (!feof(f)) {
		fscanf(f,"%s",&s);

	}
	fclose(f);
	return 0;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.06.2012, 15:00   #4
ArmanPrestige
Главное желание.
Форумчанин
 
Регистрация: 28.11.2011
Сообщений: 122
По умолчанию

На самом деле да, функция бесполезна и к т ому же не вызывается. Мое представление оформления:
1. в main открываем файл
2. вызываем функцию, которая считывает из файла символы. Если первый символ гласная то печатает все последующие символы до пробела, потом опять проверяет первый символ - если согласная, то пропускает все до пробела и по новой. функция без аргументов, ничего не возвращает.

То есть в maine просто создаем переменную, открываем файл, вызываем функцию и закрываем файл.

p.s. чуть что камни не кидать в меня, начинающий я)
Я могу, Я хочу, Я буду!
ArmanPrestige вне форума Ответить с цитированием
Старый 27.06.2012, 21:35   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
чуть что камни не кидать
Даже бриллианты с аметистами?
Логично ведь рассуждаешь )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.06.2012, 03:18   #6
ArmanPrestige
Главное желание.
Форумчанин
 
Регистрация: 28.11.2011
Сообщений: 122
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Даже бриллианты с аметистами?
Логично ведь рассуждаешь )
))спасибо
Я могу, Я хочу, Я буду!
ArmanPrestige вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка при работе программы Соло на Клавиатуре 9 zipmic Софт 1 23.03.2012 07:17
Ошибка "too many consecutive exceptions" при работе программы: как найти? DimychX Общие вопросы Delphi 11 22.06.2011 21:02
Непонятная ошибка при работе программы Вампирёнок Общие вопросы Delphi 7 24.01.2011 23:41
Ошибка в работе программы Wefast Помощь студентам 1 25.12.2009 08:13
Проблема в работе программы Wefast Помощь студентам 0 25.12.2009 00:45