
Enviado em 15/09/2021 - 17:51h
Alguém sabe me dizer por que isso ta acontecendo ? a Placa está puxando o modelo pro lado quando vai imprimir.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct { /*//definindo a estrutura*/
char marca[30];
char ano[7];
char placa[7];
char modelo[20];
} ficha_cadastral;
void sair(){
printf("\n\t****Saindo da listagem de veículos****\n");
}
int main() {
int i,j;
int continuar=1;
ficha_cadastral veiculos[4];
do{
printf("1: Inserir um veículo:\n");
printf("2: Veículos por modelo:\n");
printf("3: Listar veículos:\n");
printf("4: Filtrar veículos por ano de fabricação\n");
printf("5: Digitar o ano de fabricação:\n");
printf("0: Para sair :\n");
scanf("%d", &continuar);
getchar();
switch(continuar){
case 1:
for(i=1; i<4; i++){
printf("\nDigite a marca do veículo:\n");
scanf("%s", &*veiculos[i].marca);
printf("\nDigite o ano do veículo:\n");
scanf("%s", &*veiculos[i].ano);
printf("\nDigite a placa do veículo:(No modelo XXX-YYYY)\n");
scanf("%s", &*veiculos[i].placa);
printf("\nDigite o modelo do veículo:\n");
scanf("%s", &*veiculos[i].modelo);
}
getchar();
break;
case 2:
printf("\nVeículos em ordem de modelo:\n");
for(i=1; i<4; i++){
for(j=i+1;j<4;j++){
if(strcoll(veiculos[i].modelo , veiculos[j].modelo) > 0 ){
veiculos[0]=veiculos[i];
veiculos[i]=veiculos[j];
veiculos[j]=veiculos[0];
}
}
}
for(i=1;i<4;i++){
printf("\nMarca: %s \nAno: %s \nPlaca: %s \nModelo: %s\t\n",veiculos[i].marca,veiculos[i].ano,veiculos[i].placa,veiculos[i].modelo);
}
break;
case 3:
for(i=1;i<4;i++){
printf("Veículos: \n");
for(i=1;i<4;i++){
for(i=j+1;j<4;j++){
if(strcoll(veiculos[i].marca , veiculos[j].marca)>0){
veiculos[0]=veiculos[i];
veiculos[i]=veiculos[j];
veiculos[j]=veiculos[0];
}
}
}
for(i=1;i<4;i++){
printf("\nMarca: %s \n",veiculos[i].marca);
printf("\nAno: %s \n",veiculos[i].ano);
printf("\nPlaca: %s \n",veiculos[i].placa);
printf("\nModelo: %s \n",veiculos[i].modelo);
}
break;
case 4:
for(i=4;i<4;i++){
printf("Veículos por Ano: \n");
for(i=1;i<4;i++){
for(i=j+1;j<4;j++){
if(strcoll(veiculos[i].ano, veiculos[j].ano)>0){
veiculos[0]=veiculos[i];
veiculos[i]=veiculos[j];
veiculos[j]=veiculos[0];
}
}
}
}
for(i=1;i<4;i++){
printf("\nMarca:%s \n",veiculos[i].marca);
printf("\nAno: %s \n",veiculos[i].ano);
printf("\nPlaca: %s \n",veiculos[i].placa);
printf("\nModelo: %s \n",veiculos[i].modelo);
}
break;
case 5:
break;
case 0:
sair();
break;
default:
printf("Essa opção não existe\n");
}
}
}while(continuar);
return 0;
}
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)
Assisti Avatar 3: Fogo e Cinzas (1)
Conky, alerta de temperatura alta (7)









