Olá, sou bem iniciante em C e estou fazendo um programa que converte de celsius para fahrenheit ou para kelvin (o usuário escolhe isso com uma entrada de valor). Porém no final eu queria que o usuário também entrasse com um valor, respondendo se ele quer fechar o programa ou converter mais valores e no caso dele responder a primeira pergunta com um valor inválido, também voltasse ao início.
#include <stdio.h>
int main(){
int a;
printf("Digite 1 para converter de celsius para fahrenheit\nDigite 2 para converter de celsius para kelvin\n");
scanf("%d", &a);
if(a == 1){
celsius_fahrenheit();
}else if(a == 2){
celsius_kelvin();
}else if(a != 1 && a != 2){
printf("\n\n\n############Digite um valor valido################\n\n\n");
}
return 0;
}
int celsius_kelvin(){
float celsius;
float kelvin=273.15;
printf("\n\n\n\nQual o valor em Celsius?\n");scanf("%f", &celsius);
kelvin = celsius + kelvin;
printf("Em Kelvin seria: %.2f\n", kelvin);
}
int celsius_fahrenheit(){
float celsius;
float fahrenheit;
printf("\n\n\n\nQual o valor em Celsius?\n");scanf("%f", &celsius);
fahrenheit = celsius*1.8+32;
printf("Em Fahrenheit seria: %.2f\n", fahrenheit);
}
adicionado 18 minutos depois
Acredito que consegui resolver. Segue o código-fonte:
#include <stdio.h>
int main(){
int b;
while(1){
int a;
printf("Digite 1 para converter de celsius para fahrenheit\nDigite 2 para converter de celsius para kelvin\n");
scanf("%d", &a);
if(a == 1){
celsius_fahrenheit();
}else if(a == 2){
celsius_kelvin();
}else if(a != 1 && a != 2){
printf("\n\n\n############Digite um valor valido################\n\n\n");
}
printf("\nDeseja converter mais?\n1 - Sim\n2 - Nao\n");
scanf("%d", &b);
if(b == 2){
break;
}
}
return 0;
}
int celsius_kelvin(){
float celsius;
float kelvin=273.15;
printf("\n\n\n\nQual o valor em Celsius?\n");scanf("%f", &celsius);
kelvin = celsius + kelvin;
printf("Em Kelvin seria: %.2f\n", kelvin);
}
int celsius_fahrenheit(){
float celsius;
float fahrenheit;
printf("\n\n\n\nQual o valor em Celsius?\n");scanf("%f", &celsius);
fahrenheit = celsius*1.8+32;
printf("Em Fahrenheit seria: %.2f\n", fahrenheit);
}