Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
vladiator1
0 / 0 / 0
Регистрация: 13.03.2013
Сообщений: 7
1

написати програму с структуры

14.04.2013, 21:48. Просмотров 310. Ответов 0
Метки нет (Все метки)

я все сделал програма вроде работает нармально
помогите пожалуста переделать через пойнтер


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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<math.h>
double dummy=sin(0.0);
struct ruta{
char marca[10];
 char sofer[10];
 int nrimtr;
 int locuri;
 int bani;
}a[200];
 
void introduce(int n)  // introduction
{int i;
 for(i=0;i<n;i++)
 {printf("\nMarca microbus:"); 
  fflush(stdin);
  gets(a[i].marca);
  printf("\nNumele soferului:");
  scanf("%s",&a[i].sofer);
  printf("\nNr imatriculare:");
  scanf("%d",&a[i].nrimtr);
  printf("\nNr de locuri:");
  scanf("%d",&a[i].locuri);
  printf("\nVenit zilnic:");
  scanf("%d",&a[i].bani);
 } }
void afisare(int n) // display
{int i; for(i=0;i<n;i++)
 {
 
printf("\n%s\t%s\t%d\t%2.d \t%2.d\n",a[i].marca,a[i].sofer,a[i].nrimtr,a[i].locuri,a[i].bani);}
}
int adaugare(int n)   // add
{int p,i;
printf("\nPozitia:");
scanf("%d",&p);
 for(i=n;i>p;i--)
 {a[i]=a[i-1];
  printf("Marca microbus:");
  scanf("%s",&a[p].marca);
 printf("Numele soferului:");
  scanf("%s",&a[p].sofer    );
  printf("\nNr de imatriculare:");
  scanf("%d",&a[p].nrimtr);
     printf("\nNr de locuri:");
  scanf("%d",&a[p].locuri);
    printf("\nVenit zilnic:");
  scanf("%d",&a[p].bani);
 }n++; return n;
}
void stergere(int n)    //delete
{int i,poz;
printf("\npozitia:");
scanf("%d",&poz);
 
for(i=poz;i<n;i++)
a[i]=a[i+1];
n--;
}
int stergemarca(int n)    //delete  type
{
char marca[10];
int i,k;
printf("\nMarca microbus:");
fflush(stdin);
gets(marca);
for(i=0;i<n;i++)
if(strcmp(marca,a[i].marca)==0)
k=i;
for(i=k;i<n;i++)
a[i]=a[i+1];
 
n--;
return n;}
void modificare(int n)   // change
{
char marca[10];
int i,k;
printf("\nMarca microbus:");
fflush(stdin);
gets(marca);
for(i=0;i<n;i++)
if(strcmp(marca,a[i].marca)==0) k=i;
{
printf("Marca microbus nou:");
fflush(stdin);
gets(a[k].marca);
    printf("Numele soferului nou:");
  scanf("%s",&a[k].sofer);
    printf("Nr de imatriculare nou:");
  scanf("%d",&a[k].nrimtr);
    printf("Nr pasageri:");
  scanf("%d",&a[k].locuri);
    printf("Venit zilnic:");
  scanf("%d",&a[k].bani);
 }}
void sortare(int n) //sort
{int i,j;
struct ruta aux;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(a[i].sofer,a[j].sofer)>0)
{aux=a[i];
a[i]=a[j];
a[j]=aux;}
}
 
void bani(int n)  //money
{int i,k;float max;
max=a[0].bani;
for(i=0;i<n;i++)
{if(a[i].bani>max) max=a[i].bani;k=i;}
printf("\nMicrobusul '%s' a facut cel mai mare venit: %2.f lei",a[k].marca,max);}
 
void cautare(int n)
{
char numele[10];
int i,k;
printf("\nMarca microbusului cautat: ");
fflush(stdin);
gets(numele);
for(i=0;i<n;i++)
if(strcmp(numele,a[i].marca)==0) k=i;
printf("\n%s\t%s\t%d\t%.2d\t%d\n",a[k].marca,a[k].sofer,a[k].nrimtr,a[k].locuri,a[k].bani);}
 
int adaugareultim(int n)    // add to finish
{
  printf("Marca microbus:");
  scanf("%s",&a[n].marca);
 printf("Numele soferului:");
  scanf("%s",&a[n].sofer);
  printf("\nNr imatriculare" );
  scanf("%d",&a[n].nrimtr);
     printf("\nNr pasageri ");
  scanf("%d",&a[n].locuri);
    printf("\nVenit zilnic");
  scanf("%d",&a[n].bani);
 n++; return n;
}
void main()
{int  n;
char c;
clrscr();
printf("Nr. de microbuse Ruta 191:");
scanf("%d",&n);
do{printf("\n1.Introduce:\n");
printf("2.Afisare:\n");
printf("3.Adaugare:\n");
printf("4.Stergere dupa pozitie:\n");
printf("5.Sortare\n");
printf("6.Modificare\n");
printf("7.venit zilnic maxim:\n");
printf("8.Cautare\n");
printf("9.Stergere dupa marca:\n");
printf("0.Adaugare la sfirsit:\n");
printf("q.Exit\n");
printf("\nAlege operatia: \n");
c=getche();
switch(c){
case '1':introduce(n);break;
case '2':afisare(n);break;
case '3':n=adaugare(n);break;
case '4':stergere(n);break;
case '5':sortare(n);break;
case '6':modificare(n);break;
case '7':bani(n);break;
case '8':cautare(n);break;
case '9':stergemarca(n);break;
case '0':n=adaugareultim(n);break;
}}while(c!='q');getch();
;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2013, 21:48
Ответы с готовыми решениями:

Написати програму та побудувати блок-сехму циклічної програми
Написати програму та побудувати блок-сехму циклічної програми. (1+1/1 в степени 2)*(1+1/2 в...

подвоєні літери З клавіатури вводиться текстовий рядок. Написати програму, яка підраховує кількість різних
подвоєні літери З клавіатури вводиться текстовий рядок. Написати програму, яка підраховує кількість...

Написати функцію, яка визначає:
Написати функцію, яка визначає: чи є задана пара однакових букв.

написати програму, що використовують лінійний алгоритми
1. Знайти відстань між двома точками, що задано координатами (x1, y1) та (x2, y2). 2. Обчислити...

Совместите объявление и инициализацию структуры. После инициализации структуры выполните изменение ее полей с последующи
Написать программу структурного описания каталога одной книги. ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2013, 21:48

Как мне исправить програму?
Ввести строку и отдельно слово. Вставить слово после первого слова строки Програма не работает...

Написать програму (си) работа с файлами
Ввести из клав данные в двумерный масив.(масив 6*9) (входные числа типу float) или lf/ вобщем...

Нужно сделать програму с строками СИ
Мне нужно написать последовательность строк, через .!?, найти самое длиное слово в этом тексте, и...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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