2016-04-10 5 views
-3

Я только что создал простой калькулятор, используя C. Теперь по моему коду я могу только вычислить операции 1 за раз. таким образом, какой код или цикл я должен использовать для повторного вычисления или выполнения другого, без создания ti и повторного запуска моей программы. ну вот мой код:Очень простая функция C

`

#include <stdio.h> 
#include <stdlib.h> 

int main(void) 
{ 

    float first_value; 
    float second_value; 
    char Operation; 


    printf("Welcome to Shoeb's first calculator :)\nChoose your operation (a for Addition/s for Subtraction/m for Multiplication/d for Division) \nPress small o when done calculation ^_^\n"); 

    scanf("%s", &Operation); 


    if (Operation == 'a') { 

     printf("Type in your first number below.\n"); 
     scanf("%f", &first_value); 

     printf("Type in you second value below.\n"); 
     scanf("%f", &second_value); 

     printf("The result is %f", first_value+second_value); 

    } 



    if (Operation == 's') { 

     printf("Type in your first number below.\n"); 
     scanf("%f", &first_value); 

     printf("Type in you second value below.\n"); 
     scanf("%f", &second_value); 

     printf("The result is %f", first_value-second_value); 

    } 

    if (Operation == 'm') { 

     printf("Type in your first number below.\n"); 
     scanf("%f", &first_value); 

     printf("Type in you second value below.\n"); 
     scanf("%f", &second_value); 

     printf("The result is %f", first_value*second_value); 

    } 

    if (Operation == 'd') { 

     printf("Type in your first number below.\n"); 
     scanf("%f", &first_value); 

     printf("Type in you second value below.\n"); 
     scanf("%f", &second_value); 

     printf("The result is %f\n", first_value/second_value); 

    } 
     return 0; 
} 

`

+1

'зсапЕ ("% S", и операции);' '-> Scanf ("% С", & операции);' и использовать 'do..while' –

ответ

1

Rename 'INT основной (аннулируются)' на 'Int калькулятор (ничтожной)'. Сделать новый главный:

int main(void){ 
    while(1) calculator(); 
}; 
+0

Oh - и исправить UB cockup, отправленный Sourav :( –

+0

работал просто отлично, спасибо большое :) –

Смежные вопросы