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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Yaroslav7
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 6
#1

Вставка содержимого одного файла в середину другого - C++

15.04.2010, 06:19. Просмотров 614. Ответов 3
Метки нет (Все метки)

Здравстуйте!
возник спортивный интерес,
пытаюсь реализовать тест проверки знаний,
и уменьшить вероятность ошибки (чел. фактор)
хочу сделать его более гибким для настройки,
т.е. есть конструкция switch-case в файле с назнанием, к примеру,
test, (там есть много "лишнего" и подсчет прав. ответов, и проверка ввода,)
возможно ли все case переместить в отдельный файл и его содержимое потом
как-то вставить в файл test.
Заголовочные файлы тут не сработают она "появляются" в начале файла

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
int test(int a[]) 
{ 
 
int pr_otv=0; // объявление и обнуление количества правильных ответов
        
    for (int i=0;i<=N-2;i++) //цикл вопросов
    {int vopr = a[i]; //берем i элемент массива
    int pr; //объявляем переменную правильного ответа
    
    switch (vopr) 
      { 
          case 1: cout << endl << "Назовите название изучаемого предмета?" << endl << endl
    << "1. Растениеводство" << endl
    << "2. Кибернетика" << endl
    << "3. Информационные технологии" << endl;
    pr=3; break; 
  case 2: cout << endl << "Что будет, если пошутить над преподавателем?" << endl << endl
    << "1. Следующих раз пошутите с командиром части" << endl
    << "2. Надо будет найти третьего и вместе, в уютной обстановке шутить дальше" << endl
    << "3. Оба вышеперечисленных варианта" << endl;
    pr=1; break; 
          
default: cout << "\n !!!ERROOR!!! Нет case на сгенрированный номер вопроса" << endl; _getch(); break; 
    } 
        
cout << endl << "Введите номер правильного ответа (1 или 2 или 3) и нажмите ENTER : ";  int otv; cin >> otv;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2010, 06:19     Вставка содержимого одного файла в середину другого
Посмотрите здесь:

Копирование содержимого одного текстового файла в другой C++
Как программно добавить текст в середину существующего файла? C++
C++ Копирование содержимого одного файла в другой посредством командной строки
C++ Два файла объединяются по принципу: строчка из одного, строчка из другого(2 задачи)
Запись в середину файла - fstream C++
Как Очистить середину файла? C++
Вставка элемента в середину массива C++
C++ Вставка элемента в середину и поиск по списку
C++ Вставить в середину записи одного числа другое
C++ Вставить в середину записи одного числа другое (без библиотеки string)
C++ Замена произвольной записи из одного файла записью из другого
Вставка узла в середину двусвязного списка C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kazak
3032 / 2353 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
15.04.2010, 06:47     Вставка содержимого одного файла в середину другого #2
А тест нужно сделать именно с case'ом?
accept
4819 / 3239 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
15.04.2010, 06:51     Вставка содержимого одного файла в середину другого #3
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
int Dialog(void)
{
 
... 
 
   switch (vopr) {
 
    case 1 :
        Ask1(&pr);
        break;
 
    case 2 :
        Ask2(&pr);
        break;
 
    default:
        AskDef();
        break;
    } 
 
    //if (pr != 
 
}
 
int Ask1(int *p)
{ 
    cout << "Назовите название изучаемого предмета?" << endl;
 
    cout << endl
         << "1. Растениеводство"
         << endl
         << "2. Кибернетика"
         << endl
         << "3. Информационные технологии"
         << endl;
 
    *p = 3;
 
    return 0;
}
 
int Ask2(int *p)
{
    cout << "Что будет, если пошутить над преподавателем?" << endl;
 
    cout << endl
         << "1. Следующих раз пошутите с командиром части"
         << endl
         << "2. Надо будет найти третьего и вместе, "
            "в уютной обстановке шутить дальше"
         << endl
         << "3. Оба вышеперечисленных варианта"
         << endl;
 
    *p = 1;
 
    return 0;
}
 
int AskDef(void)
{
    cout << "!!!ERROOR!!! Нет case на сгенрированный номер вопроса" << endl;
 
    cin.getc();
    
    return 0;
}
это всё через ссылки делается и с возможностями C++

Ask1() может включать в себя подфункции типа: предложить варианты, прочитать ввод, проверить ввод и так далее
Yaroslav7
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 6
15.04.2010, 20:02  [ТС]     Вставка содержимого одного файла в середину другого #4
Да, с case'ом,
чтобы в отдельном файле забивать вопросы

Добавлено через 12 часов 21 минуту
Спасибо большое, попробую
Yandex
Объявления
15.04.2010, 20:02     Вставка содержимого одного файла в середину другого
Ответ Создать тему
Опции темы

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