Переделать с помощью тернарных операторов программу перевода сантиметорв в дюймы - C (СИ)
Формулировка задачи:
Здравствуйте! помогите пожалуйста разобраться что не так?
Задумка в том чтобы решить с помощью тернарный условный оператор. Ошибка в типе данных(
//Ввести длину отрезка с указанием шкалы измерения(c – сантиметры, i – дюймы), напечатать результат в обеих шкалах : например,
//a.при вводе «2i» напечатать «2” = 5.08 cm»
//b.при вводе «5.08c» напечатать «5.08 cm = 2”»
int main(){
char c;
int a,z;
scanf("%d%s", &a, &c);
z = c == 'c' ? a * 0.39 : c == 'i' ? a * 2.54 : 'Invalid format';
printf("%.2f\n",z);
system("pause");
}Решение задачи: «Переделать с помощью тернарных операторов программу перевода сантиметорв в дюймы»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
//Ввести длину отрезка с указанием шкалы измерения(c – сантиметры, i – дюймы),
//напечатать результат в обеих шкалах : например,
//a.при вводе «2i» напечатать «2” = 5.08 cm»
//b.при вводе «5.08c» напечатать «5.08 cm = 2”»
int main()
{
double a;
char c;
printf("Input length:\n");
scanf("%lf", &a);
printf("If inches-press i, if centimeters-press c \n");
scanf("%s", &c);
c == 'i' ? printf("Length is %g inches or %g centimeters.\n", a, a * 2.54):
c == 'c' ? printf("Length is %g centimeters or %g inches.\n", a, a/2.54):
printf("Invalid input\n");
return 0;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Указываем точку входа в программу
- Объявляем переменные a и c типа double и char соответственно
- Выводим сообщение приглашающее ввести длину отрезка
- Считываем значение длины отрезка с помощью функции scanf и сохраняем его в переменной a
- Выводим сообщение приглашающее указать единицы измерения(i или c)
- Считываем значение единицы измерения с помощью функции scanf и сохраняем его в переменной c
- Осуществляем проверку значения переменной c
- Если значение переменной c равно 'i', то выводим результат в дюймах, иначе выводим результат в сантиметрах
- Возвращаем 0, чтобы указать, что программа успешно завершилась