Enviado em 14/11/2017 - 16:10h
Boa tarde pessoal.
Estou tentando resolver esse problema em C, mas ele não está imprimindo as respostas. segue o enunciado do problema e o que eu já fiz.
Fazer um programa que, dados dois vetores inteiros de 10 posições, efetue as respectivas operações
aritméticas (soma, subtração, divisão, multiplicação) indicadas por um vetor de 10 posições de
caracteres também fornecido, contendo em cada posição uma das quatro operações aritméticas em
qualquer combinação, armazenando os resultados num vetor de reais (também de 10 posições). Ao
final, exibir os valores armazenados no vetor de resultados.
Estou tentando resolver esse problema em C, mas ele não está imprimindo as respostas. segue o enunciado do problema e o que eu já fiz.
Fazer um programa que, dados dois vetores inteiros de 10 posições, efetue as respectivas operações
aritméticas (soma, subtração, divisão, multiplicação) indicadas por um vetor de 10 posições de
caracteres também fornecido, contendo em cada posição uma das quatro operações aritméticas em
qualquer combinação, armazenando os resultados num vetor de reais (também de 10 posições). Ao
final, exibir os valores armazenados no vetor de resultados.
#include <stdio.h>
#include <string.h>
#define MAX 10
int main(){
int vet1[MAX], vet2[MAX];
float res[MAX]; //vetor de resultados
int i;
char oper[MAX];
for(i=0; i<MAX; i++){
printf("Digite um número: ");
scanf("%d", &vet1[i]);
printf("Digite outro numero: ");
scanf("%d", &vet2[i]);
}
for(i=0; i<MAX; i++){
printf("Digite uma operação: ");
scanf("%s", oper[i]);
switch (oper[i]) {
case '+':
res = vet1[i] + vet2[i];
break;
case '-':
res = vet1[i] - vet2[i];
break;
case '*':
res = vet1[i] * vet2[i];
break;
case '/':
res = vet1[i] / vet2[i];
break;
default:
printf("operação invalida\n");//sempre ta imprimindo
}
printf("%.2f\n", (float)res);//não está imprimindo
}
}