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

Отсортировать слова в файле по алфавиту и сохранить в файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запись в бинарный файл http://www.cyberforum.ru/cpp-beginners/thread326970.html
По заданию требуется организовать ввод данных типа структуры в бинарных файл , в соответствии с позицией, задаваемой пользователем. При этом пропуски между данными в файле заполняется нулями. #include "stdafx.h" #include <fstream> #include <iostream> #include <vector> #include "conio.h" using namespace std; struct scan_info{
C++ Одномерные массивы; на ЯП Си, среда – Borland C++5.02 Здравствуйте! Помогите, пожалуйста, выполнить следующее задание: Задать целочисленный массив размером N. Поменять местами серии с минимальной и максимальной длиной. Если таких серий несколько, то любые из них. Серия – последовательность одинаковых элементов в массиве. Один элемент – серия с длиной равной 1.:impossible: Заранее спасибо всем кто откликнется!!!:flirt: Добавлено через 20... http://www.cyberforum.ru/cpp-beginners/thread326965.html
Сформировать массив C++
Массив Y сформировать по правилу Yi=cos2ix/(2i-1)(2i+1), x вводить с клавиатуры. Определить количество элементов yi<1.2 среди элементов с нечетными номерами и сумму элементов с четными порядковыми номерами.
C++ Вычислить величину
Дана непустая последовательность положительных вещественных чисел x1, x2, … , xn (n заранее не известно), за которой следует отрицательное число. Вычислить величину nx1 + (n–1)x2 + … + 2xn-1 +xn.
C++ Обработка строки http://www.cyberforum.ru/cpp-beginners/thread326932.html
здравствуйте. такая задача: написать функцию, входным параметром которой является указатель на строку. функция должна вернуть количество слов в строке, у которых первый и последний символ совпадают. я тут кое-чего набыдлокодил, да и то не работает. если можно поправьте существующее решение, чтобы оно работало или предложите более лучшее решение: int quantity(char*); int main() { char s1="...
C++ подсчитать количество цифр Для целого неотрицательного числа n подсчитать количество цифр в десятичной, шестнадцатеричной, восьмеричной и двоичной системах счисления. подробнее

Показать сообщение отдельно
JeyKip
53 / 45 / 2
Регистрация: 23.06.2011
Сообщений: 122
28.06.2011, 10:06     Отсортировать слова в файле по алфавиту и сохранить в файл
у тебя функция void возвращает значение (return *f)...я закомментировал эту строчку...
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/* подклчение библиотек нужных для работы программы */
 #include <stdio.h>
 /* подключение библиотеки для функций getch */
 #include "conio.h"
 #include "windows.h"
 #include <iostream>
 #define MSS 50
 /* ключевок слово для определеня типа */
 char input[MSS] = "";
 typedef
 /* определаяем структуру book */
 struct book
 {
 /* название строки*/
 char name[MSS];
 /* указатель на следующий элемент структуры */
 struct book *next;
 }
 BOOK;
 
 /* СОРТИРОВКА */
 BOOK * sort(BOOK *f, int b)
 {
 /* временные указатели */
 BOOK *t = f, *t1, *p;
 /* число перестановок */
 int count;
 int r = 0;
 /* исключаем случаи, которые сорировать не надо */
 if (f == NULL)
 {
 printf("Сортировать нечего!\n");
 return NULL;
 }
 if (f->next == NULL) 
 {
 printf("Сортировать нечего!\n");
 return f;
 }
 
 /* если число перестановок равно 0, то все элементы на месте */
 do 
 {
 count = 0;
 t = f;
 while (t->next != NULL)
 { 
 if (b == 10)
 {
 r = strcmpi(t->name, t->next->name);
 if (r == 1)
 {
 /* меняем местами */
 if (t == f)
 {
 f = t->next;
 t->next = t->next->next;
 f->next = t;
 } else {
 t1 = t->next;
 t->next = t->next->next;
 t1->next = t;
 p->next = t1;
 }
 count++;
 break;
 }
 p = t;
 t = t->next;
 }
 } 
 }
 while (count > 0);
 printf("Сортировка выполнена!\n");
 return f;
 }
 
 /* ФУНКЦИЯ СОХРАНЕНИЯ РЕЗУЛЬТАТА ПОСЛЕ СОРТИРОВКИ*/
 void save(BOOK *f, int b)
 {
 /* временный указатель */
 BOOK *t;
 /* указатель на файл для работы */
 FILE *fout;
 
 if (b == 1)
 {
 input[0] = '\x0';
 }
 
 /* если текущего файла нет, спросим имя файла */
 if (input[0] == '\x0')
 {
 printf("Enter name of file for save: ");
 gets(input);
 }
 
 /* создаем файл */
 if ((fout = fopen(input, "w")) == NULL)
 {
 /* ошибка открытия файла */
 printf("Error open file [%s] for writing.\n", input);
 //return f;
 }
 
 /* цикл по всем элементам */
 for (t = f; t != NULL; t = t->next)
 {
 /* выводим очередную строчку в файл */
 fprintf(fout, "%s\n", t->name);
 }
 /* закроем файл */
 fclose(fout);
 
 printf("Save in file [%s] finished!\n", input);
 }
 
 /*главная функция*/
 void main(void)
 {
 /*указатель на файл с которым будем работать*/
 FILE *f;
 /*счетчик*/
 int i;
 if (!(f= fopen("test.txt", "r"))) {
 /* файл не открыт */
 /* выведем сообшение */
 printf(" файл test.txt не удалось открыть для записи.\n");
 /*Завершим программу*/
 }
 }
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru