Определить, является ли число целым - C (СИ)
Формулировка задачи:
Ребята, не могу понять,как сделать, чтобы программа могла различить целое это число(цена) или с плавающей точкой
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
union priceU
{
int price_i;
float price_f;
};
struct book
{
char title[100];
char author[100];
int year;
union priceU price;
};
int main()
{
struct book lib;
printf ("Nazvanie: \n");
scanf ("%s", &lib.title);
printf ("Avtor: \n");
scanf ("%s", &lib.author);
printf ("Vvedite God: \n");
scanf ("%d", &lib.year);
printf ("Vvedite tsenu: \n");
scanf ("%f", &lib.price);
printf (" \n");
printf ("Resultat vvoda \n");
printf (" \n");
printf("%s %s %d %f", lib.title, lib.author, lib.year, lib.price);
system("PAUSE");
return EXIT_SUCCESS;
}Решение задачи: «Определить, является ли число целым»
textual
Листинг программы
scanf ("%f", &lib.price);
Объяснение кода листинга программы
- Вводится число с помощью функции scanf
- Функция scanf пытается считать число в переменную lib.price
- Если число введено, то код продолжает работу
- Если число не введено, то код завершается с сообщением об ошибке