Informática, perguntado por Leidianesoares1, 1 ano atrás

Escreva um programa para ler um vetor de dez números inteiros. Troque os valores do vetor dois a dois, ou seja, os elementos cujos índices do vetor são pares devem ser trocados pelos elementos de índice ímpares imediatamente vizinhos a estes. Exiba na tela o vetor resultante desta troca dos valores.

Soluções para a tarefa

Respondido por bokomoko
0
tente assim

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define LIMITE 10 


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("%c",&tecla);
  if ( tecla == "S") {
      //  obten vetor do teclado
     printf("%s \n",mensagem);
     for( int l=0 ; l<LIMITE ; l++){
         printf("Informe o elemento [%i] = ",l);
       scanf("%i",&vetor[l]);
      };
  }  else {
     for( int l=0 ; l< LIMITE ; l++){
         vetor[l] = (rand() % 100)-30;
      };
       }
  }

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 primeira[LIMITE];
int aux;
srand(time(NULL));   // should only be called once
    obtem_vetor("Informe dados do primeiro vetor",primeira);
  exibe_vetor("Eis o vetor de 10 elementos",primeira,LIMITE);
  printf("\n");

// invertendo par com ímpar
for( int l=0 ; l<LIMITE-1 ; l+=2){
    aux = primeira[l];
  primeira[l] = primeira[l+1];
  primeira[l+1] = aux;
};
exibe_vetor("Eis o vetor de 10 elementos depois de modificado",primeira,LIMITE);


}


se quiser rodá-lo https://repl.it/@bokomoko/Inverte-2-a-2

Perguntas interessantes