Лабораторная работа: Операции языка Cи
return 0;
}
Приведение целых и вещественных типов
Что напечатает следующая программа ?
#include <stdio.h>
#define PRi(x) printf("i=%.8g\t",(double)x)
#define PRl(x) printf("l=%.8g\t",(double)x)
#define PRf(x) printf("f=%.8g\t",(double)x)
#define PRd(x) printf("d=%.8g\t",(double)x)
#define NL putchar('\n')
#define PRINT4(x1,x2,x3,x4) PRi(x1);PRl(x2);PRf(x3);PRd(x4);NL
main()
{
double d;
float f;
long l;
int i;
i=l=f=d= 100/3; PRINT4(i,l,f,d);
d=f=l=i= 100/3; PRINT4(i,l,f,d);
i=l=f=d= 100/3.; PRINT4(i,l,f,d);
d=f=l=i= (double)100/3; PRINT4(i,l,f,d);
i=l=f=d= (double)(100000/3); PRINT4(i,l,f,d);
d=f=l=i= (double)100000/3; PRINT4(i,l,f,d); return 0;
}
Приведение целых и вещественных выражений
Что напечатает следующая программа ?
#include <stdio.h>
#define NL putchar('\n')
#define PR(x) printf("%g\t",(double)x)
#define PRINT1(x1) PR(x1);NL
#define PRINT2(x1,x2) PR(x1);PR(x2);NL