C语言学习Day08

8-1

/*

	逗号运算符:表达式1, 表达式2,表达式3

		取最后一个表达式的值

一、自动类型转换

	多种类型进行混合运算,系统会将所有的数据类型转换为类型最大的那种,然后再进行计算 

	int --> long -->  double

	注意:char  short之间不会相互转换,直接转换为int类型

	注意:float自动转换为double

二、强制类型转换

	(强制转换的类型)(表达式)

*/



#include <stdio.h>

int main()

{

	//3 + 5.5 = 3.0 + 5.5 = 8.5

	printf("%f \n" , 3+5.5);

	

	char ch= 'a';

	int i = 2 ;

	double d = 3.5;

	printf("%f \n" , ch + i + d);//97 + 2 + 3.5 = 99.0 + 3.5 = 102.5

	

	float f = 5.6;

	double d2 = i + f;//2.0 + 5.6 = 7.6

	printf("%f \n" , d2);

}

8-2

/*

二、强制类型转换

	(强制转换的类型)(表达式)

*/



#include <stdio.h>

int main()

{

	float f2 = 7.5;

	printf("%d \n" , (int)f2);	

	printf("余数为:%d \n"  , (int)f2%3);

	

	char ch02 = (char)65;

	printf("ch02 = %c \n" , ch02);

}

8-3

/*

3、赋值时的类型转换

当左右类型不一致时,需要进行类型转换,将右边的类型转换为左边的类型,这种转换系统自动进行。



	3.1实型数据→整型:直接取整,舍弃小数部分。

	3.2字符型或整型数据→实型:数值不变,补足相应的有效位数。

	3.3单精度实型→双精度实型:数值不变,有效位数扩展到16位,以8个字节存储;双精度实型赋值给单精度实型时,只截取前面7位有效数字,以4个字节存储。

	3.4字符型→整型:将ASCII码值赋给最低的8位 。

	3.5整型→字符型:只截取最低的8位赋给字符型变量。



占位数多的→位数少的:截取低位赋值。

占位数少的→位数多的:数据直接赋给低位,高位符号扩充。 



*/

#include <stdio.h>

int main()

{

	int i1 = 10 , i2 = 20 , i3 = 97 , i4 = 5896;

	double d1 = 5.5 , d2 = 6.9;

	char ch1 , ch2 = 'A' , ch3;

	float f1 = 8.888877789999998,f2 = 5.08;

	

	i1 = d1;//5

	printf("i1 = %d \n" , i1);

	

	d2 = ch2;//A = 65.000000

	printf("d2 = %f \n" , d2);

	

	d2 = f1;//8.8888  6~7

	printf("d2 = %f \n" , d2);

	

	

	i2 = ch2;//A = 65 I2 = 65

	printf("i2 = %d \n" , i2);

	

	ch3 = i4;//5896 1011100001000  00001000 = 8

	printf("ch3 = %c \n" , ch3);

	printf("%d \n" , ' ');

}

8-4

/*

printf():输出函数

 (1)“格式控制”是用双撇号括起来的字符串,也称“转换控制字符串”,它包括三种信息。

  ①格式说明。格式说明由“%”和格式字符组成,如%d、%f等。

  ②普通字符。普通字符即需要原样输出的字符。

  ③转义字符:无法用单个字符描述的一些特定操作,如\n(换行)、\t(跳到下一个水平制表位)等。

 

 (2) “输出表列”是需要输出的一些数据,可以是常量、变量或表达式。

*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值