АЛ
Александр Лозинский

Нужна помощь с программой на С.

#include

#include

#include

#include

int main(void)

{

setlocale(LC_CTYPE, "rus");

printf("Максимальное значение для типа unsigned char\n");

printf("UCHAR_MAX = %d = %x\n", UCHAR_MAX, UCHAR_MAX);

printf("Минимальное значение для типа int\n");

printf("INT_MIN = %d = %x\n", INT_MIN, INT_MIN);

printf("Максимальное значение для типа int\n");

printf("INT_MAX = %d = %x\n", INT_MAX, INT_MAX);

printf("Минимальное значение для типа long int\n");

printf("LONG_MIN = %d = %x\n", LONG_MIN, LONG_MIN);

printf("Максимальное значение для типа long int\n");

printf("LONG_MAX = %d = %x\n", LONG_MAX, LONG_MAX);

printf("Минимальное значение для типа double\n");

printf("DBL_MIN = %f = %\n", DBL_MIN, DBL_MIN);

printf("Максимальное значение для типа double\n");

printf("DBL_MAX = %f = %e\n", DBL_MAX, DBL_MAX);

return 0;

}

Эта программа выдает заоблачные значения для инт, лонг инт (7fffffff) и дабл (1.797+308). Для анс. чар так как надо: 255=ff. По идее это нужно исправить оператором sizeof, но как правильно его вписать?

Натали
Натали

#include
#include
#include
#include
int main(void) {
setlocale(LC_CTYPE, "rus");
printf("Максимальное значение для типа unsigned char\n");
printf("UCHAR_MAX = %hu = %x\n", UCHAR_MAX, UCHAR_MAX);
printf("Минимальное значение для типа int\n");
printf("INT_MIN = %i = %x\n", INT_MIN, INT_MIN);
printf("Максимальное значение для типа int\n");
printf("INT_MAX = %i = %x\n", INT_MAX, INT_MAX);
printf("Минимальное значение для типа long int\n");
printf("LONG_MIN = %l = %x\n", LONG_MIN, LONG_MIN);
printf("Максимальное значение для типа long int\n");
printf("LONG_MAX = %l = %x\n", LONG_MAX, LONG_MAX);
printf("Минимальное значение для типа double\n");
printf("DBL_MIN = %lf = %e\n", DBL_MIN, DBL_MIN);
printf("Максимальное значение для типа double\n");
printf("DBL_MAX = %.0lf = %e\n", DBL_MAX, DBL_MAX);
getchar();
return 0;
}

АХ
Азамат Хафизов

А ниче, что это и есть значения MAX_INT и MAX_DOUBLE?
Хотя с даблами там ошибка - на вход ожидается флоат, а приходит дабл.
Макс_учар что выдает я не понял? 255 или что-то еще?

Никита
Никита

Всё верно, разве что для double выводится не минимальное, а минимальное ПОЛОЖИТЕЛЬНОЕ значение. Ну и в шестнатеричном виде для double минимальное значение не выводится т. к. %\n - тут x пропущен.
Максимальные значения все выводятся правильно, ничего заоблачного нет.

http://prntscr.com/4vfrre

Похожие вопросы
Нужна помощь с программой
нужна помощь с программой на С++
Нужна помощь в написании программы на с
Нужна помощь в программе.
Нужна помощь в подборке программы
Нужна помощь в программе на Delphi
нужна помощь с написанием программы
Нужна помощь с программой на C
Нужна помощь в программе!
Нужна помощь с графической программой