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

Сортировка фамилий по алфавиту - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как реализовать поиск минимального и максимального элемента в двух объектах класса сразу?? http://www.cyberforum.ru/cpp-beginners/thread411856.html
Т.е. один минимальный на два объекта, объекты - одномерные массивы
C++ Листание текстового файла в консоле На экран выводится файл, который можно листать вперед или назад. // Прототип функции вывода части матрицы, в которую переписан листаемый файл void matr_part_out(char matr, int icur, int how_many, int x, int y); // Очистка окна от старого текста void clear_window (int left, int top, int right, int botton, char color); // Для перемещения полоскового курсора, для выделения цвета... http://www.cyberforum.ru/cpp-beginners/thread411845.html
Вопрос насчёт чтения файла C++
Добрый вечер. у меня имеется файл, в котором данные расположены не в одной строке. Для чтения я использую функцию fgets, и вот такая проблема возникает: мне необходимо, чтобы каждая следующая fgets читала следующую строку. Я слышал что-то про "перевод курсора в файле" на следующую строку в iostream, но, во-первых, как мне это реализовать, а во-вторых, я работаю со стандартной библиотекой си -...
C++ Наследование. Иерархия и контейнерные классы
Создать класс студент, имеющий имя (указатель на строку), курс и идентификационный номер. Определить конструкторы, деструктор и функцию печати. Создать public-производный класс – студент-дипломник, имеющий тему диплома. Определить конструкторы по умолчанию и с разным числом параметров, деструкторы, функцию печати. Определить функции переназначения названия диплома и идентификационного номера. ...
C++ Даден массив. Все четные елементы массива уменьшыть в два раза, а нечетные увеличить в два раза. http://www.cyberforum.ru/cpp-beginners/thread411817.html
С++. Даден массив. Все четные елементы массива уменьшыть в два раза, а нечетные увеличить в два раза. Сложновато :sorry:
C++ вывод всех N значных чисел, сумма цифр которых = данному числу Составить программу вывода всех N значных десятичных чисел, сумма цифр которых равна введённому с клавиатуры целому числу (<50). подробнее

Показать сообщение отдельно
daslex
1271 / 516 / 106
Регистрация: 02.08.2011
Сообщений: 2,662
21.09.2015, 23:58     Сортировка фамилий по алфавиту
ServerCydia,
Кликните здесь для просмотра всего текста
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
#include <stdio.h>
#include <string.h>
 
int main(){
 
    char Famil[255];
    char fio[100][255];
    char ArrInitial[100][7];
 
    FILE *fp = fopen("D:\\in.txt","r");
        if(fp == NULL)
        {
            printf("can not open file '%s'","D:\\in.txt");
            return 0;
        }
 
        int n=0;
 
 
    while(fgets(fio[n],sizeof(Famil),fp)){
        strncpy(ArrInitial[n],fio[n],5);
        ArrInitial[n][6]=0;
 
        int k=strlen(fio[n]);
        strncpy(fio[n],fio[n]+5,k-5);
        fio[n][k-6]=0;
 
 
 
        n++;
    };
    fclose(fp);
    printf("%s","\n");
 
    char t[100], u[7];
    for(int i=0;i<n;i++)
    {
        for(int j=i;j<n;j++)
        {
            if(strcmp(fio[i],fio[j])==1) // еще неотсортировано
            {
                // переставляем
                strcpy(t,fio[i]);
                strcpy(fio[i],fio[j]);
                strcpy(fio[j],t);
 
                strcpy(u,ArrInitial[i]);
                strcpy(ArrInitial[i],ArrInitial[j]);
                strcpy(ArrInitial[j],u);
            }
        }
    }
 
 
/*Я просто вывел на экран, в файл запишите сами*/
for (int i=0;i<n;i++){
    printf("%s%s%s",ArrInitial[i],fio[i],"\n");
}
 
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru