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

Отсортировать стуктуры по автору а внутри каждого автора- по году издания - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ломаная линия (тема Файлы) http://www.cyberforum.ru/cpp-beginners/thread206357.html
Дан файл действительных чисел. Первые числа задают координаты начала ломаной линии, каждая следующая пара чисел соответствует длине очередного отрезка ломаной и углу его наклона к оси x. Определить, образует ли ломаная замкнутый многоугольник, и в случае положительного ответа указать, сколько углов имеет. p.s прошу написать на языке си, и написать к действиям описание (что тут находим , что...
C++ Написать функцию которая числа в строке разделяет знаками табуляции помогите написать функцию которая числа в строке разделяет знаками табуляции http://www.cyberforum.ru/cpp-beginners/thread206289.html
C++ Матрица с элементами-строками (Borland С)
"Ввести матрицу. Элементы матрицы - строки. Подсчитать сумму кодов символов каждого слова и, если сумма оказалась чётной, развернуть зеркально это слово в строке. Полученные матрицы вывести на экран. Стандартных функций при работе со строками не использовать." 2 недели парюсь над задачей, ничего не получается! Помогите, pls, сдавать скоро! Задачу нужно сделать на С.
прог.на С++, позволяющую создавать папку (CreateDir(имя_масси-ва_типа_char))....??????? C++
написать программку, позволяющую создавать папку (CreateDir(имя_массива_типа_char)), удалять пустую папку (RemoveDir(имя_массива_типа_ char)), удалять файл (DeleteFile(имя_массива_типа_char)), переименовывать файл (RenameFile(старое_имя_массива_ типа_char, новое_имя_массива_типа_char)). Пользователь должен иметь возможность выбирать необходимое ему действие с помощью меню, например следующего...
C++ Курсачом на С http://www.cyberforum.ru/cpp-beginners/thread206094.html
Во общем засада ни как не получается сделать правильно так что бы программа работала на языке С я его видимо уже совсем за лето забыл.. Помогите пожалуйста 22. Дан файл, содержащий сведения о пациентах глазной клиники. Структура записи файла : фамилия, имя, отчество пациента, пол, возраст, место проживания (город), диагноз. Написать программу, выдающую: - количество иногородних,...
C++ Простое число Вводиться последовательность из N целых положительных элементов. Определить, содержит ли последовательность хотя бы одно простое число. Для определения простого числа создать функцию подробнее

Показать сообщение отдельно
CHUCKe
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 25
08.12.2010, 21:32     Отсортировать стуктуры по автору а внутри каждого автора- по году издания
надо отсортировать по автору а внутри каждого автора- по году издания.
у меня почему-то иероглифы выводит.
я вообщем проверяю правильность ввода и там-же значения присваиваю
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <math.h>
 
typedef struct
{
    char name[15];
    char book[20];
    int god;
    int kolvo;
}litera;
 
int check_small_1(char *str)
{
     cout<<strlen(str)<<endl;
     for(int i=0;i<strlen(str);i++)
      if (isdigit(str[i]))
        return 0;
     return 1;
}
 
int check_small_2(char *str)
{
    cout<<strlen(str)<<endl;
    for(int i=0;i<strlen(str);i++)
     if (isalpha(str[i]))
       return 0;
    return 1;
}
 
int check(char *str,litera *elem)
{
   char nametemp[15];
   int j=0,i=0;
   while(str[i]!=' '&&i<strlen(str))
   {
      nametemp[i]=str[i];
      i++;
   }
   nametemp[i]=0;
   if (i==strlen(str))
     return  0;
   if (!check_small_1(nametemp))
     return 0;
     
   j=i;
   i=0;
   j++;
   char nazvtemp[20];
   while(str[j]!=' '&&j<strlen(str))
   {
     nazvtemp[i]=str[j];
     i++;
     j++;
   }
   nazvtemp[i]=0;
   if (j==strlen(str))
     return 0;
   if (!check_small_1(nazvtemp))
     return 0;
     
   i=0;
   j++;
   char godtemp[4]; 
   while(str[j]!=' '&&j<strlen(str))
   {
     godtemp[i]=str[j];
     i++;
     j++;
   }
   godtemp[i]=0;
   if (j==strlen(str))
     return 0;
   if (!check_small_2(godtemp))
     return 0;
   char kolvotemp[3];
   
   i=0;
   j++;
   while(j<strlen(str))
   {
     kolvotemp[i]=str[j];
     i++;
     j++;
   }
   kolvotemp[i]=0;
   if (!check_small_2(kolvotemp))
      return 0;
   
   strcpy(elem->name,nametemp);
   strcpy(elem->book,nazvtemp);
   elem->god=atoi(godtemp);
   elem->kolvo=atoi(kolvotemp);
   return 1;
   
     
     
};
 
    
 
//ïåðåä ïåðâûì ñëîâîì Г*ГҐГІ ïðîáåëГ*
 
int main()
{
    int delta;
    cout<<"Kol-vo elementoff"<<endl;
    cin>>delta;
    litera arr[delta];
    
    char s[100];//äëÿ ГўГ±ГҐ ñòðîêè
    int k=0,i=0;
    
    for(int k=0;k<delta;k++)
    {
    litera temp;
    gets(s);
    if (s[0]==0) 
      break;
     int ch=check(s,&temp);
    if (ch==1)
     arr[i]=temp;
    else 
     cout<<"Incorrect!!!\n"<<endl;     
    }
    
    //óïîðÿäî÷èòü ГґГ*ìèëèè ГЇГ® Г*ëôГ*ГўГЁГІГі
    for(int i=delta-1;i>=2;i--)
     for(int j=2;j<=i;j++)
      if (strcmp(arr[j].name,arr[j-1].name)>0)
       { 
        litera x=arr[j];
        arr[j]=arr[j-1];
        arr[j-1]=x;
       }
    
    //ñîðòèðîâêГ* "ïóçûðüêîì" ГЇГ® ãîäГ*Г¬.
    for(i=delta-1;i>=2;i--)
      for(int j=2;j<=i;j++)
          if ((arr[j].god > arr[j - 1].god)&&(arr[j].name==arr[j-1].name))
          {
              litera x = arr[j];
              arr[j] = arr[j - 1];
              arr[j - 1] = x;
          }
    
    cout<<"Data"<<endl;
    for(i=0;i<delta;i++)
     cout<<arr[i].name<<" "<<arr[i].book<<" "<<arr[i].god<<" "<<arr[i].kolvo<<endl;
     
     
     return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru