• Matéria: Informática
  • Autor: edsonluisferrei
  • Perguntado 8 anos atrás

4- Escreva um programa em C que recebe via teclado um conjunto de números inteiros (máximo 50). Armazene todos os números inteiros em um vetor até que o usuário digite 0 (zero). Logo após permita ao usuário consultar o valor que está armazenado em determinada posição. O programa deve imprimir na tela a posição do número no vetor ou ERRO: Número não encontrado (veja exemplos abaixo): Exemplo: Número: 50 Número: 30 Número: 20 Número: 10 Número: 40 Número: 0 Valor: 20 Posição no vetor: 2 Valor: 40 Posição no vetor: 4 Valor: 60 ERRO: Número não encontrado Valor: 0 Observação: O programa termina quando o usuário digitar 0 (zero).

Respostas

respondido por: bokomoko
0
Eu faria assim

#include <stdio.h>#include <stdlib.h>
#define LIMIT 50 /* número máximo de entradas*/
int main(){    int achou;       int *numeros;    int quantos;    int auxiliar;    int z = 1;    quantos = 0;    numeros = malloc(sizeof(int)*LIMIT);    auxiliar =1;        while(quantos <= 50 && auxiliar ) {        printf("Ainda temos %d vagas. Digite um número qualquer ou 0 para terminar",LIMIT-quantos);        scanf("%d", &auxiliar);        printf("Usuário digitou %d \n",auxiliar);        if (auxiliar) {             numeros[++quantos] = auxiliar;                   }        else {             printf("entrada terminada pelo usuário \n");        }    };    auxiliar = 1 ;     printf("\n");    printf("Eis o vetor \n");    for (i=1;i<quantos;i++){      printf("Posiçao %d contém o número %d \n",i,numeros[i]);    };    while(auxiliar) {        printf("Informe um número para ser pesquisado ou digite 0 para terminar ");        scanf("%d", &auxiliar);        if (auxiliar) {             achou = 0;             for (i=1;i<quantos;i++){               if (numeros[i]==auxiliar){                   printf("Número %d encontrado na posicao %d \n",auxiliar,i);                   achou = 1;               }             }             if (!achou) {               printf("Número %d não encontrado \n",auxiliar);             }                   }    };    
}
Perguntas similares