来源:中国大学MOOC,深入浅出
“如果在未来,有孩子想要成长为下一个Faker——我一定会做到最好,成为榜样。-Faker亲笔《不死者》”
变量定义
如何输入,输入在终端窗口,定义变量,对变量赋值初始值,变量用来保存数据。
int price;
标识符(biaoshi biaozhi)都行,标识符只能是字母,数字,下划线组合而成,且不能是数字作为开头。
有一些单词作为C语言关键字,所以不能当做标识符。Int,break,auto……
变量赋值和初始化
int price=0;
在定义时赋值,就是初始化,C语言赋值和初始化是一样的。
赋值:编程赋值“=”和数学等于“=”,是不一样的,一个是把右边的值给左边,一个是表示两边相等的关系。
C语言对变量没有做必须在定义时进行初始化,但是变量在使用前一定要赋一次值。
int price=0; //变量定义+初始化为0;
int change; //只进行了变量定义,没有进行赋值,所以change的值是多少不知道,
//是change变量所在内存地址之前保存的值,没有修改,可能是0,也可能是任意数。
printf("%d %d",price,change); //change输出结果不知道是什么
C99允许程序在任何位置进行变量声明定义,如果是ANSI C只能支持在程序刚开始使用的时候,进行变量定义。
格式读入函数scanf【Scan + Format】,读入函数printf【Print + Format】,Format格式
scanf("%d%d",&price,&change); //& 艾特:取地址符号,取后面变量的内存地址
printf("%d%d",price,change);//格式输出
取地址符号,现在先不讲,知道是这样就可以了,等指针的时候讲。
变量,常亮,直接量()
int price=0; //变量 int change; const int AMOUNT=100; //常亮,const是一个修饰符,表示是一个固定值的数值,不能修改。Only-read change = AMOUNT -10; //10就是一个直接量,直接的数字
如果输入有误(数值格式的变量,输入的字符串类型),变量没有得到有效的初始化,不影响程序继续执行,微信变量定义成功了,变量没有初始化,所以变量的值,就是变量地址没有被初始化的值。
浮点数
C语言中,10和10.0是两个完全不同的数,10是整数,10.0是浮点数。
printf("%d",10/3); //结果是3
10/3*3的结果是9,整数和整数相除的结果只能是整数,所以10/3的结果是3,只保留整数,(小数部分被扔掉了)。
printf("%d",10.0/3); //会报错,10.0除以3的结果是浮点数,前面出现的格式输出是整数。
printf("%f",10.0/3); //可以运行 3.33333
printf("%f",10/3.0); //可以运行 3.33333
printf("%f",10.0/3.0); //可以运行 3.33333
10/3.0,或者10.0/3,出现一个位置是浮点数后,得到的结果就是浮点数,
浮点数:(小数点出现可能浮动,后面是连续的0,可以省略)
定点数:(小数点位置是固定的,位上没有数字,也要用0补上),计算机更擅长做整数之前的除法,但是生活中更多的是小数。
程序经过修改了,再运行前,需要重新编译,出现对应EXE程序。
浮点数,单精度浮点数Float,双精度浮点数Double。