1、通过实验的方法,观察系统如何处理整数上溢、浮点数上溢、和浮点数下溢的情况。
整数上溢的情况:
1
2
3
4
5
6
7
8
|
#include<stddio.h>
int
main()
{
int
i=2147483647;
printf
(
"%d %d %d\n"
,i,i+1,i+2);
}
运行结果如下:
|
解释:整数i的范围就是:
1
|
-2147483647-2147483647
|
所以最大值加1向上溢出后回到最左端。
浮点数上溢:
程序:
1
2
3
4
5
6
|
#include<stdio.h>
int
main()
{
float
toobig=3.4E38*100.0f;
printf
(
"%e\n"
,toobig);
}
|
程序结果:
浮点数下溢的情况:
1
2
3
4
5
6
7
|
#include<stdio.h>
int
main()
{
float
toosmall=0.1234E-10;
printf
(
"%e\n"
,toosmall/10);
}
|
结果:
2、输入一个ASC||码值(66),输出相应的字符。
1
2
3
4
5
6
7
|
#include<stdio.h>
int
main()
{
int
i=66;
int
j=98;
printf
(
"%c %c\n"
,i,j);
}
|
结果:
3、编程发出警报声,并输出如下:
/a的数量便是警报声的次数。
4、
本文转自 lillian_trip 51CTO博客,原文链接:http://blog.51cto.com/xiaoqiaoya/1951526,如需转载请自行联系原作者