一、示例程序
#include <stdio.h> int main(void) { float weight; float value; printf("Are you worth your weight in platinum\n"); printf("Let`s check it out.\n"); printf("Pleasee enter your weight in pounds:\n"); /* 获取用户输入 */ scanf("%f",&weight); value = 1700.0 * weight * 14.55833; printf("Your weight in platinum is worth $%.2f.\n",value); printf("You are easily worth that! If platinum prices drop,\n"); printf ( "eat more to maintain your value. \n"); return 0; } 结果为: Are you worth your weight in platinum Let`s check it out. Pleasee enter your weight in pounds: 123 Your weight in platinum is worth $3044146.75. You are easily worth that! If platinum prices drop, eat more to maintain your value.
欧美日常使用的度量衡单位是常衡盎司( avoirdupois ounce ),而欧美黄金市场上使用的黄金交易计量单位是金衡盎司( troy ounce )。国际黄金市场上的报价,其单位“盎司”都指的是黄金盎司。常衡盎司属英制计量单位,做重量单位时也称为英两。相关换算参考如下:1常衡盎司=28.350克,1金衡盎司=31.104克,16常衡盎司=l磅。该程序的单位转换思路是:把磅换算成金衡盎司,即28.350÷31.104×16=14.5833。——译者注
1.程序细节
为了打印新类型的变量,在printf()中使用%f来处理浮点值。%.2中的.2用来精确控制,指定输出的浮点数只显示小数点后两位
%f说明scanf()要读取user键盘录入的浮点数,&weight告诉scanf()把输入的值赋给weight变量,scanf()使用&找到变量weight的地点。后面会详细说明&的作用
二、变量与常量数据
1.常量
有些数据类型,在程序运行前就已经定义好了,在运行过程中没有变化,这些称为常量
2.变量
其他数据类型在程序的运行过程中可能被改变和赋值,这些称为变量
三、数据类型关键字
位、字节、字和字长
弄了好久都没分清,看了这书后,我可以了
当然不用清除到底,就像刚学开车不需要掌握汽车的原理一样
首先,位、字节、字都是计算机数据单元或存储单元的术语
位是计算机存储的最小单位要么是0或1
字节是计算机常用的存储单位,1个字节(Byte)等于8位(bit)
计算机每个字所包含的位数称为字长,指计算机一次能处理的二进制数字的数目,字长越大计算机处理的越快
字(word)是计算机的自然存储单位,对于8位的计算机1个字长只有8位
四.C语言基本数据类型
1.int类型
也就是数字类型,整型,int类型必须是整数
声明为变量创建和标记存储空间,并指定初始值
2.其他整数类型
short int类型 占用的存储空间可能比int少,常用于数值较小的场合节省空间
long int 适用于数值较大的场合
long long 占用存储空间比long多,适用于更大的场合
unsigned int或unsigned用于非负值的场合
signed 强调使用由符号类型的意图
实例:
#include <stdio.h> int main(void) { long int estine; long johns; short int erns; short ribs; unsigned int s_count; unsigned players; long long age; return 0; }
int类型那么多,应该如何选择﹖首先,考虑unsigned类型。这种类型的数常用于计数,因为计数不用负数。而且,unsigned类型可以表示更大的正数。
long常量和long long常量
通常,程序代码中使用的数字(如,2345)都被储存为int类型。如果使用1000000这样的大数字,超出了int类型能表示的范围,编译器会将其视为long int类型(假设这种类型可以表示该数字)。如
整数溢出
如果整数超出了相应类型的取值范围会怎样?
这种情况称为整数溢出
3.使用字符:char类型
char用来存字符(如,字母或标点符号)
char类型用于储存字符(如,字母或标点符号),但是从技术层面看,char是整数类型。因为char类型实际上储存的是整数而不是字符。计算机使用数字编码来处理字符,即用特定的整数表示特定的字符。
3.1 ASCII编码?
现实生活中的数据在计算机中怎么表示
计算机所有数据和运算时都要使用二进制表示
ASCII编码是个规则,按照这个规则将生活中的信息用二进制表示出来
3.2 转义字符
4._Bool类型
用来表示布尔值,即逻辑值true和false
5.float、double和long double
flaot和double用来表示小数,double比float更精确
5.1浮点值的上溢和
上溢就是超出了当前类型能表达的范围,上溢时,不能再继续运算,一般要进行中断处理。
下溢就是小于最小取值范围,称为下溢。 下溢时,一般把浮点数各位强迫为零,机器仍可继续运算。
五、关键概念
C语言提供了大量的数值类型,目的是为程序员提供方便。那以整数类型为例,C认为一种整型不够,提供了有符号、无符号,以及大小不同的整型,以满足不同程序的需求。
计算机在内存中用数值编码来表示字符。最常用的是ASCII编码
基本数据类型分为两大类:整数型和浮点型
Java是基本数据类型和引用数据类型
六、编程练习
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x9QLL0iT-1633227806357)(E:\Typora\Image\image-20211003001816163.png)]
C Primer Plus 第六版(中文版)第三章(完美修订版)编程练习答案_CLOVER的博客-CSDN博客