Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. 3. Набрать текст программы, представленный ниже. Проанализировать выдаваемые программой результаты. Объяснить, почему они именно такие.
  2.  
  3. #include <stdlib.h>
  4.  
  5. #include <stdio.h>
  6.  
  7. #include <limits.h>
  8.  
  9. #include <float.h>
  10.  
  11. main()
  12.  
  13. {
  14.  
  15. char c;
  16.  
  17. unsigned char uc;
  18.  
  19. int i;
  20.  
  21. unsigned u;
  22.  
  23. short s;
  24.  
  25. long l;
  26.  
  27. float f;
  28.  
  29. double d;
  30.  
  31. printf("sizeof(c)=%d\tsizeof(uc)=%d\nsizeof(i)=%d\tsizeof(u)=%d\t\
  32.  
  33. sizeof(s)=%d\tsizeof(l)=%d\nsizeof(f)=%d\tsizeof(d)=%d\n\n",
  34.  
  35. sizeof(c),sizeof(uc),sizeof(i),sizeof(u),sizeof(s),
  36.  
  37. sizeof(l),sizeof(f),sizeof(d));
  38.  
  39. uc=c=CHAR_MAX;
  40.  
  41. printf("CHAR_MAX : c=%d uc=%d\n", c, uc);
  42.  
  43. c++; uc++;
  44.  
  45. printf("CHAR_MAX+1 : c=%d uc=%d\n", c, uc);
  46.  
  47. uc=c=CHAR_MIN;
  48.  
  49. printf("CHAR_MIN : c=%d uc=%d\n", c, uc);
  50.  
  51. c=uc=UCHAR_MAX;
  52.  
  53. printf("UCHAR_MAX : c=%d uc=%d\n", c, uc);
  54.  
  55. c++; uc++;
  56.  
  57. printf("UCHAR_MAX+1 : c=%d uc=%d\n", c, uc);
  58.  
  59. uc=c=-5;
  60.  
  61. printf("-5 : c=%d uc=%d\n", c, uc);
  62.  
  63. c=-5; uc=5;
  64.  
  65. printf("char and unsigned char -5>5 : %d\n\n", c>uc);
  66.  
  67. c=s=SHRT_MAX;
  68.  
  69. uc=s;
  70.  
  71. printf("SHRT_MAX : c=%d uc=%d s=%d\n", c, uc, s);
  72.  
  73. s++;
  74.  
  75. printf("SHRT_MAX+1 : s=%d\n", s);
  76.  
  77. c=s; uc=s;
  78.  
  79. printf("%d : c=%d uc=%d\n", SHRT_MIN, c, uc);
  80.  
  81. s=0; c=s; uc=s;
  82.  
  83. printf("0 : c=%d uc=%d s=%d\n", c, uc, s);
  84.  
  85. i=INT_MAX;
  86.  
  87. l=i; u=i;
  88.  
  89. printf("INT_MAX : i=%d u=%u l=%ld\n", i, u, l);
  90.  
  91. i++; l++; u++;
  92.  
  93. printf("INT_MAX+1 : i=%d u=%u l=%ld\n", i, u, l);
  94.  
  95. i=INT_MIN;
  96.  
  97. l=i; u=i;
  98.  
  99. printf("INT_MIN : i=%d u=%u l=%ld\n", i, u, l);
  100.  
  101. u=UINT_MAX;
  102.  
  103. i=u; l=u;
  104.  
  105. printf("UINT_MAX : i=%d u=%u l=%ld\n", i, u, l);
  106.  
  107. u=i=-5;
  108.  
  109. printf("-5 : i=%d u=%u\n", i, u);
  110.  
  111. i=-5; u=5;
  112.  
  113. printf("int and unsigned int -5>5 : %d\n", i>u);
  114.  
  115. c=-5; u=5;
  116.  
  117. printf("char and unsigned int -5>5 : %d\n\n", c>u);
  118.  
  119. i=5.1;
  120.  
  121. printf("i=5.1 : i=%d\n", i);
  122.  
  123. i=5.9;
  124.  
  125. printf("i=5.9 : i=%d\n", i);
  126.  
  127. d=f=FLT_MAX;
  128.  
  129. printf("FLT_MAX : f=%g d=%g\n", f, d);
  130.  
  131. d=f=FLT_MIN;
  132.  
  133. printf("FLT_MIN : f=%g d=%g\n", f, d);
  134.  
  135. d=f=FLT_EPSILON;
  136.  
  137. printf("FLT_EPSILON : f=%g d=%g\n", f, d);
  138.  
  139. f=1e10;
  140.  
  141. printf("1e10 : f=%f\n", f);
  142.  
  143. f=1e11;
  144.  
  145. printf("1e11 : f=%f\n", f);
  146.  
  147. f=1234567890;
  148.  
  149. printf("1234567890 : f=%f\n", f);
  150.  
  151. d=DBL_MAX;
  152.  
  153. printf("DBL_MAX : d=%g\n", d);
  154.  
  155. d=DBL_MIN;
  156.  
  157. printf("DBL_MIN : d=%g\n", d);
  158.  
  159. d=DBL_EPSILON;
  160.  
  161. printf("DBL_EPSILON : d=%g\n", d);
  162.  
  163. d=1e15+1;
  164.  
  165. printf("1e15+1 : d=%lf\n", d);
  166.  
  167. d=1e16+1;
  168.  
  169. printf("1e16+1 : d=%lf\n", d);
  170.  
  171. f=10000*100000;
  172.  
  173. f+=1;
  174.  
  175. f-=4*250000000;
  176.  
  177. printf("1 : f=%f\n", f);
  178.  
  179. f=10000*100000+1-4*250000000;
  180.  
  181. printf("1 : f=%f\n", f);
  182.  
  183. d=10000*100000+1-4*250000000;
  184.  
  185. printf("1 : d=%lf\n", d);
  186.  
  187. d=1e20*1e20+1000-1e22*1e18;
  188.  
  189. printf("1000 : d=%lf\n", d);
  190.  
  191. system("pause");
  192.  
  193. return 0;
  194.  
  195. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement