Linguagem C: Faça um programa para ler um vetor com 10 elementos e inverter a posição destes elementos, de tal modo que o primeiro elemento venha a ser o último depois da inversão. Não faço ideia como inverter as posições.
Respostas
respondido por:
3
Que tal assim ?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define RAND_MAX 100
void obtem_vetor( char *mensagem, int vetor[]){
char tecla;
printf("Quer digitar 10 valores ou quer que o computador o faça ? S/n");
scanf("%s",&tecla);
if ( tecla == "S") {
// obten vetor do teclado
printf("%s \n",mensagem);
for( int l=0 ; l<10 ; l++){
printf("Informe o elemento [%i] = ",l);
scanf("%i",&vetor[l]);
};
}
else {
for( int l=0 ; l<10 ; l++){
vetor[l] = (rand()*100) - 50;
};
}
}
void exibe_vetor( char *mensagem, int vetor[], int limite) {
printf("\n %s \n",mensagem);
for (int i=0; i<limite;i++){
printf("Elemento [%i] = %i \n",i,vetor[i]);
};
};
void main() {
int original[10];
int invertido[10];
srand(time(NULL)); // should only be called once
obtem_vetor("Informe dados do vetor original",original);
exibe_vetor("Eis o vetor na ordem original",original,10);
printf("\n");
// invertendo a ordem
printf("\nInvertendo \n");
for( int l=0 ; l<10 ; l++){
invertido[9-l] = original[l];
};
exibe_vetor("Eis o vetor na ordem invertida",invertido,10);
}
Pode vë-lo aqui https://repl.it/data/repls/49e0d2de-1773-4d78-a3ac-d6059bc0d8ce/__replit_main__/revision/15111688888...
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define RAND_MAX 100
void obtem_vetor( char *mensagem, int vetor[]){
char tecla;
printf("Quer digitar 10 valores ou quer que o computador o faça ? S/n");
scanf("%s",&tecla);
if ( tecla == "S") {
// obten vetor do teclado
printf("%s \n",mensagem);
for( int l=0 ; l<10 ; l++){
printf("Informe o elemento [%i] = ",l);
scanf("%i",&vetor[l]);
};
}
else {
for( int l=0 ; l<10 ; l++){
vetor[l] = (rand()*100) - 50;
};
}
}
void exibe_vetor( char *mensagem, int vetor[], int limite) {
printf("\n %s \n",mensagem);
for (int i=0; i<limite;i++){
printf("Elemento [%i] = %i \n",i,vetor[i]);
};
};
void main() {
int original[10];
int invertido[10];
srand(time(NULL)); // should only be called once
obtem_vetor("Informe dados do vetor original",original);
exibe_vetor("Eis o vetor na ordem original",original,10);
printf("\n");
// invertendo a ordem
printf("\nInvertendo \n");
for( int l=0 ; l<10 ; l++){
invertido[9-l] = original[l];
};
exibe_vetor("Eis o vetor na ordem invertida",invertido,10);
}
Pode vë-lo aqui https://repl.it/data/repls/49e0d2de-1773-4d78-a3ac-d6059bc0d8ce/__replit_main__/revision/15111688888...
Perguntas similares
6 anos atrás
6 anos atrás
9 anos atrás
9 anos atrás
9 anos atrás
9 anos atrás