博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C Primer Plus 第3章 数据和C 编程练习
阅读量:6680 次
发布时间:2019-06-25

本文共 2030 字,大约阅读时间需要 6 分钟。

   1、

/* 整数上溢 */#include 
int main(void){ int i = 2147483647; unsigned int j = 4294967295; /* 无符号整数j像一个汽车里程指示表(形容的太好了,可参考《计算机科学导论》第3章 数据存储,有图), 当达到最大值时,它将溢出到起始点。整数i也是同样。它们的主要区别是unsigned int变量j的起始点是0(正像里程 指示表那样),而int变量i的起始点则是-2147483648。——参考《C Primer Plus》 */ printf("%d %d %d\n", i, i+1, i+2); printf("%u %u %u\n", j, j+1, j+2); return 0;}

   浮点数上溢和浮点数下溢,于浮点数,以目前的知识最终是无法深究的,故留待以后探索。只能借《C Primer Plus》之意:

   当计算结果是一个大得不能表达的数时,会发生上溢。现在C语言要求为这样的数赋予一个代表无穷大的特殊值,以inf或infinity示之。

   用对浮点值可用的全部精度进行表示的最小数字(它具有最小的指数,并且仍具有可以由全部可用位进行表示的最小的尾数值),若此数除以2,通常这个操作将使指数部分减小,但是指数已经达到了最小值,所以计算机只好将尾数部分达到位进行右移,空出首位二进制位,并丢弃最后一位二进制位。此过程称为下溢。(举例说之:以十进制为例,把一个包含4位有效数字的数0.1234E-10除以10,将得到结果0.0123E-10,但是损失了1位有效数字)。

/* 浮点数上溢与下溢 */#include 
int main(void){ float toobig = 3.4e38 * 100.0f; float toosmall = 0.1234e-2 / 10; printf("%e\n", toobig); // 输出为inf printf("%f\n", toosmall); // 损失1位有效数字 return 0;}

    2、  

#include 
int main(void){ int ch; printf("请输入一个ASCII码值: "); scanf("%d", &ch); printf("%d相应的字符为: %c", ch, ch); return 0;}

   3、

#include 
int main(void){ printf("\aStartled by the sudden sound, Sally shouted, "); printf("\"By the Great Pumpkin, what was that! \"\n"); return 0;}

   4、

#include 
int main(void){ float input; printf("请输入一个浮点数: "); scanf("%f", &input); printf("The input is %f or %e.", input, input); return 0;}

   5、

#include 
int main(void){ int age; printf("请输入您的年龄: "); scanf("%d", &age); printf("您的年龄合%e秒", age * 3.156e7); return 0;}

   6、  

#include 
int main(void){ int kua; printf("请输入水(单位为夸脱)的夸脱数: "); scanf("%d", &kua); printf("%d夸脱水中包含%e个水分子", kua, kua * 950 / 3.0e-23); return 0;}

   7、

#include 
int main(void){ float feet; printf("请输入您的身高(单位为英寸): "); scanf("%f", &feet); printf("%.2f inches = %.2f cm", feet, feet * 2.54); return 0;}

 

转载于:https://www.cnblogs.com/yerenyuan/p/5180359.html

你可能感兴趣的文章
在Word 2007文档表格中设置行高度和列宽度
查看>>
android:layout_gravity和android:gravity
查看>>
我的友情链接
查看>>
洛谷——P2820 局域网
查看>>
php获取数组第一个数组单元值的方法
查看>>
关于MYSQL的一些命令
查看>>
zabbix + RedHat7 安装配置指导
查看>>
Linux基础命令---显示主机名hostname
查看>>
ASP后门、***清理
查看>>
strtus2的xml文件配置
查看>>
Error:No suitable device found: no device found for connection
查看>>
SCCM 2016 为客户端分发管理组件Configuration Manager(一)
查看>>
CentOS 7 多网卡绑定
查看>>
HIVE创建HBASE表
查看>>
k3cloud单据插件
查看>>
MaridDB主从复制,双主模型,半同步的配置
查看>>
麒麟开源堡垒机功能版本说明及升级方式说明
查看>>
交换机SPAN功能配置
查看>>
关于ssh的问题
查看>>
作业 rh124
查看>>