-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathquestao_09.c
149 lines (116 loc) · 2.82 KB
/
questao_09.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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct concessionaria{
char marca[15];
int ano;
char cor[10];
float preco;
};
int quantidade;
struct concessionaria vetcarros[20];
void ler_carro();
void compara_carro();
void nome_carro();
void busca_carro();
int main(){
int opcao, vdd = 1;
while(vdd == 1){
printf("\n 1 - Ler o Vetor Carros\n 2 - Faixa de Preco\n 3 - Verifica Marca\n 4 - Busca Carro\n 5 - Sair\n --> ");
scanf("%i", &opcao);
switch(opcao){
case 1:
ler_carro();
break;
case 2:
compara_carro();
break;
case 3:
nome_carro();
break;
case 4:
busca_carro();
break;
case 5:
vdd = 0;
printf("\nVc saiu do programa\n\n");
break;
default:
vdd = 0;
printf("\nValor invalido\n");
break;
}
}
return 0;
}
void ler_carro(){
int i;
printf("\n\nCADASTRO DE CARRO\n\n");
printf("Quantos carros deseja cadastrar -->");
scanf("%i", &quantidade);
setbuf(stdin, NULL);
for(i = 0; i < quantidade; i++){
printf("\n\n CARRO %i: ", i+1);
printf("\n MARCA: ");
scanf("%[^\n]s", &vetcarros[i].marca);
setbuf(stdin, NULL);
printf("\n ANO: ");
scanf("%i", &vetcarros[i].ano);
setbuf(stdin, NULL);
printf("\n COR: ");
scanf("%[^\n]s", &vetcarros[i].cor);
setbuf(stdin, NULL);
printf("\n PRECO: ");
scanf("%f", &vetcarros[i].preco);
setbuf(stdin, NULL);
}
}
void compara_carro(){
int i;
float compara;
printf("Qual valor a ser comparado?\n --> ");
scanf("%f", &compara);
printf("\n Os carros nessa feixa de preco sao: \n");
for (i = 0; i < quantidade; i++){
if(compara >= vetcarros[i].preco){
printf("\n\nCARRO %i", i+1);
printf("\n MARCA : %s", vetcarros[i].marca);
printf("\n COR: %s", vetcarros[i].cor);
printf("\n ANO: %i", vetcarros[i].ano);
}
}
}
void nome_carro(){
int i;
char nome[15];
printf("\n NOME DA MARCA: ");
scanf("%s", &nome);
for (i = 0; i < quantidade; i++){
if(strcmp(nome, vetcarros[i].marca) == 0){
printf("\n\nCARRO %i", i+1);
printf("\n PRECO : %.3f", vetcarros[i].preco);
printf("\n ANO: %i", vetcarros[i].ano);
printf("\n COR: %s", vetcarros[i].cor);
}
}
}
void busca_carro(){
int i, ano;
char marca[15], cor[15];
printf("\n MARCA: ");
scanf("%s", &marca);
setbuf(stdin, NULL);
printf("\n ANO: ");
scanf("%i", &ano);
setbuf(stdin, NULL);
printf("\n COR: ");
scanf("%s", &cor);
setbuf(stdin, NULL);
for (i = 0; i < quantidade; i++){
if((strcmp(marca, vetcarros[i].marca) == 0) && (ano == vetcarros[i].ano) && (strcmp(cor, vetcarros[i].cor) == 0)){
printf("\n O preco desse carro e R$ %.3f", vetcarros[i].preco);
}else{
printf("\n\n Carro nao possui registo");
}
}
}