-
预科第二天
今天开始,我们被正式编入17年的第一个班1701班,不再属于16年的最后一个班1619班了。现在算是预科班。我们现在讲的也都是最基础的内容,对我来说理解不难,就是动手能力贼差。
老师先是接着昨天的内容将printf的用法讲完,然后讲的新内容:
printf("%x.yf\n",float_num);
若x<整数位数+小数位数+1,
则原样输出,保留的位数不是x,而是实际位数
若x>整数位数+小数位数+1,
则输出结果保留x位,小数部分为y位
printf("%-x.yf\n",float_num);
输入函数:
scanf("格式字符串",地址列表);
scanf():不能输入数据的精度
字符输入函数:getchar()
获取单个字符
字符输出函数:putchar()
输出单个字符
scanf("%d",&inum);
getchar();一个scanf()后面跟着一个getchar()用来吸收回车符或者游离字符,并不是对getchar进行输入的
while(getchar() != '\n');用来循环吸收回车符
printf()/scanf()中占位符:
printf() scanf()
char %c %c
int %d %d
short %d %d
long %ld %ld
float %f %f
double %f/%lf %f/%lf
其他:
浮点型数据: %g 自动保留小数位数
%e 按指数形式显示实型数据
%o 八进制数
字符串 %s %s
地址 %p
十六进制数 %x/%X 八进制以0开头 十六进制以0X开头
unsigned %u
实型数据的指数形式:
men 或者 mEn
即:
2e3---->2*10^3
4.345E5----->4.345*10^5
3999.123e-3------>3999.123*10^-3
其中:
m为实型数,或正或负
n只能为整数!!!
e/E大小写都可以
进制数:二、八、十、十六
0x456 = 0100 0101 0110
= 4 * 16^2 + 5 * 16^1 + 6 * 16*0
= 4 * 8^2 +5 * 8^1 + 6 * 8^0
数据类型转化:
1.隐式转化
int inum=3.14;
2.强制类型转化
将数据强制转化为程序员需要的数据类型
强制类型转化并不会改变变量原来的数据类型,只是临时做一次转化
默认由低精度向高精度进行转化
类型转化方向:
char--->short--->int--->long--->float--->double--->long double
复合数据类型:
1.数组类型
DataType ArrayName[常量表达式]
2.结构类型
struct StructName
{
//成员列表,由基本数据类型组成
//也可以是构造类型
};
3.联合类型
union UnionType
{
//成员列表,由基本数据类型组成
};
4.枚举类型 默认值0
enum EnumName
{
//成员列表,一般是大写英文单词
};
指针类型:
DataType *pointerName;
空类型:
void
数据类型:基本数据类型,复合数据类型,指针类型,空类型
运算符:
1.算术运算符
加:+ 减:- 乘:× 除:/ 取余(求馍):% 自增:++ 自减:--