Ошибка компиляции error C2447 - C (СИ)
Формулировка задачи:
#include<stdio.h>
#include<conio.h>
#include<locale.h>
void main();
{
setlocale(LC_ALL, "");
double a,b,c,d;
printf("Введите первое число");
scanf("%d",&a);
printf("Введите знак: ");
scanf("%d",&b);
if(b==+ || b==- || b==: || b==x)
{
printf("Введите второе число: ");
scanf("%d",&c);
if(b=+)
{
d==a+b;
printf("%d + %d= %d",a,c,d);
}
if(b=-)
{
d==a-b;
printf("%d - %d = %d",a,c,d);
}
if(b=x)
{
d=a*b;
printf("%d x %d = %d",a,c,d);
}
if(b=:)
{
d==a/b;
printf("%d : %d = %d",a,c,d);
}
}
else
{
printf("Калькулятор не может выполнить данное действие");
}
getch();
}Решение задачи: «Ошибка компиляции error C2447»
textual
Листинг программы
#include<stdio.h>
#include<conio.h>
#include<locale.h>
void main()
{
setlocale(LC_ALL, "");
double a,c,d;
char b;
printf("Введите первое число");
scanf("%d",&a);
printf("Введите знак: ");
scanf("%s",&b);
if(b=='+' || b=='-' || b==':' || b=='x')
{
printf("Введите второе число: ");
scanf("%d",&c);
if(b=='+')
{
d=a+c;
printf("%d + %d= %d",a,c,d);
}
if(b=='-')
{
d=a-c;
printf("%d - %d = %d",a,c,d);
}
if(b=='x')
{
d=a*c;
printf("%d x %d = %d",a,c,d);
}
if(b==':')
{
d=a/c;
printf("%d : %d = %d",a,c,d);
}
}
else
{
printf("Калькулятор не может выполнить данное действие");
}
getch();
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Устанавливаем локаль на русскую
- Объявляем переменные a, c, d и b типа double и char соответственно
- Выводим сообщение с просьбой ввести первое число
- Считываем введенное значение в переменную a с помощью функции scanf
- Выводим сообщение с просьбой ввести знак
- Считываем введенный знак в переменную b с помощью функции scanf
- Проверяем значение переменной b на соответствие допустимым значениям
- Если значение переменной b равно '+', то выполняем операции сложения и выводим результат на экран
- Если значение переменной b равно '-', то выполняем операции вычитания и выводим результат на экран
- Если значение переменной b равно 'x', то выполняем операции умножения и выводим результат на экран
- Если значение переменной b равно ':', то выполняем операции деления и выводим результат на экран
- Если значение переменной b не соответствует ни одному из допустимых значений, то выводим сообщение об ошибке
- Вызываем функцию getch для приостановки выполнения программы до тех пор, пока пользователь не нажмет клавишу