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

русско-английский словарь с помощью лин. списка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ в чем ошибка? http://www.cyberforum.ru/cpp-beginners/thread385527.html
ЧЕТНЫЕ МЕСТА Даны целое N в интервале от 1 до 26 и N целых чисел. Требуется написать программу, определяющую сумму элементов массива, стоящих на четных местах ( второй элемент + четвертый + шестой и т.д.) Ограничения: Использовать массив, N в интервале от 1 до 25 Формат входных данных: Целое N и N целых чисел. Формат выходных данных: Сумма элементов массива.
C++ Машана Тюринга :umnik: Здравствуйте. У меня возникла проблема с заданием на курсовой роботе. Мне нужно написать алгоритм перевода чисел с 16-ой системы чиления в 2-у....НО:wall:, на Машине Тюрига. И ещё написать програму на С++.%-) http://www.cyberforum.ru/cpp-beginners/thread385525.html
C++ написать программу,чтоб на печать вывелась таблица
Пожалуста напишите программу буду благодарен. Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п. Нужно написать программу,чтоб на печать вывелась эта таблица.В начале программы вводится библиотека fstream.h.Остальное не знаю
C++ Написать программу, выводящую на экран сумму и среднее арифметическое N случайных чисел
Написать программу, выводящую на экран сумму и среднее арифметическое N случайных чисел, заданных в диапазоне от А до В. Основная программа запрашивает значения N, А, В и передает их в функцию. Функция генерирует необходимое количество случайных чисел из заданного диапазона, выводит их на экран, производит вычисления и вывод результата на экран. P.S. тема для этой задачи называется функции, так...
C++ Найти количество строк матрицы, элементы которых упорядочены по возрастанию. http://www.cyberforum.ru/cpp-beginners/thread385497.html
Дана матрица размера M × N. Найти количество ее строк, элементы которых упорядочены по возрастанию.
C++ Конструктор копирования для класса с указателем на абстрактный класс Всем привет. Как реализовать конструктор копирования для класса Foo? class Base { public: ... virtual void DoSmth() = 0; }; class DerivedOne : public Base подробнее

Показать сообщение отдельно
BukTOP_10
1 / 1 / 0
Регистрация: 05.10.2011
Сообщений: 13
16.11.2011, 22:10     русско-английский словарь с помощью лин. списка
Здравствуйте,помогите пожалуйста с программой,требуется написать программу для русско-английского словаря,читать слова из текстового файла и хранить с помощью лин. списка,написал примерный код,не могу исправить ошибки,помоги пожалуйста!
Код
#include<iostream>
#include<fstream>
#include <windows.h>

struct LE
{
  char text[30];
  struct LE *next;
};

using namespace std;

char bufRus[256];
 
char* rus(const char* text)
{
      CharToOem(text,bufRus);
      return bufRus;
}

int InputLinSpis(LE &dictionary)
{
     ifstream fileIn;
	 fileIn.open("database.txt");
	 if(!fileIn.is_open()){   cout << "Error opening file"<< endl;
                              fileIn.close();
                              return 0;
                          } 
     while(!fileIn.eof()) getline(dictionary.text,30); //извлекаем слова построчно
     fileIn.close();
     return 1;
}  

LE& CreateLinSpisok()
{
    LE *top,*p;
    top=NULL;
    while(1)
    {
            p=new LE[sizeof(LE)];
            if(!InputLinSpisok(p)) 
            {
              delete []p;
              return *top;
            }
            p->next=top; top=p;
   } 
} 

void DestructLinSpis(LE *p)
{
	LE *next;
	while(p)
	{
		next=p->next;
		delete []p;
		p=next;
	}
} 



int Find(LE &p)
{
    char word[30],*buf1=NULL,*buf2 = NULL;
    bool find=false;
    
    cout<<"Enter word to translate:";
    cin.getline(word,30); 
    
    while(!p)
    {
      buf1=strtok(p.text,"-");
      buf2=strtok(NULL," ");
      buf1=rus(buf1);
      if (*buf1==*word && strlen(buf1)==strlen(word))
      {
 
         cout << word << " = " << rus(buf2) << endl;
         find = true;
         return 1;
      }
      if (*buf2 == *word && strlen(buf2) == strlen(word))
      {
         cout << word << " = " << buf1 << endl;
         find = true;
         return 1;
      }
      p=p->next;
   }
   if (!find) cout<<"No match"<<endl; //если совпадений не найдено
   return 0;
} 

main()
{
LE *p;

p=CreateLinSpisok();
Find(p);
system("pause");
DestructLinSpis(p);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru