C语言学习
第二章
2.1.1变量定义
- 做计算
printf("23+43=%d\n",23+43);
- 算找零
printf("100-23=%d\n",100-23);
- 如何能做程序运行时输入那个数字23,然后计算输出结果?
需要
- 有地方放输入的数字;
- 有办法输入数字;
- 输入的数字能参与计算。
例如:
//change.c的main函数内
int price = 0;
printf("请输入金额(元):");
scanf("%d",&price);
int change = 100 - price;
printf("找您%d元。\n",change);
如何输入
- 输入也在终端窗口中
- 输入是以行为单位进行的,行的结束标志就是你按下了回车键。在你按下回车之前,你的程序不会读到任何东西。
变量
- int price = 0;
- 这一行,定义了一个变量。变量的名字是price,类型是int,初始值是0;
- 变量是一个保存数据的地方,当我们需要在程序里保存数据时,比如上面的例子中要记录用户输入的价格,就需要一个变量来保存它。用一个变量保存了数据,它才能参加到后面的计算中,比如计算机找零。
变量定义
- 变量定义的一般形式就是:
- <类型名称><变量名称>;
- int price;
- int amount;
- int price,amount;
变量的名字
- 变量需要一个名字,变量的名字是一种“标识符”,意思是它用来标识这个和那个的不同的名字。
- 标识符有标识符的构造规则。基本的原则是:标识符只能由字母、数字和下划线组成,数字不可以 出现在第一个位置上,C语言的关键字(有的地方叫它们保留字)不可以用做标识符。
C语言的保留字(不需要背诵)
auto,break,case,char,const,continue,default,do,double,else,enum,extern,float,for,goto,if,int,long,register,return,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile,while,inline,restrict
2.1.2变量赋值与初始化
- int price = 0;
- 这一行,定义了一个变量。变量的名字是price,类型是int,初始值是0。
- price=0是一个式子,这里的“=”是一个赋值运算符,表示将“=”右边的值赋给左边的变量。
赋值
- 和数学不同,a=b在数学中表示关系,即a和b的值是一样;而在程序设计中,a=b表示要求计算机做一个动作:将b的值赋给a。关系是静态的,而动作是动态的。在数学中,a=b和b=a是等价的,而在程序设计中,两者的意思完全相反。
初始化
-
当赋值发生在定义变量的时候,就像程序change中的第7行那样,就是变量的初始化。虽然C语言并没有强制要求所有的变量都在定义的地方做初始化,但是所有的变量在第一次被使用(出现在赋值运算符的右边)之前被应该赋值一次。
-
如果没有初始化?
- 原本的变量在计算机中代表为多少就是多少(在Dev C++里默认为0,但j默认为1)
变量初始化
- <类型名称><变量名称>=<初始值