版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如果有侵权请立即联系:55525090@qq.com,我们立即下架或删除。
简介:变量
做计算
算找零
• 如何能在程序运⾏时输⼊那个数字 23,然
后计算输出结果?
算找零
• 如何能在程序运⾏时输
⼊那个数字 23,然后计
算输出结果?
需要: !
1. 有地⽅放输⼊的数字; !
2. 有办法输⼊数字; !
3. 输⼊的数字能参与计算。
change.c
今后课件上的程序都只有
main的 {}⾥⾯的部分
如何输⼊
• 输⼊也在终端窗⼝中
• 输⼊是以⾏为单位进⾏的,⾏的结束标志
就是你按下了回⻋键。在你按下回⻋之前,
你的程序不会读到任何东⻄
变量
• 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
不需要背诵!
赋值和初始化
• int price = 0;
• 这⼀⾏,定义了⼀个变量。变量的名字是
price,类型是 int,初始值是 0。
• price=0是⼀个式⼦,这⾥的 “= ”是⼀个赋
值运算符,表⽰将 “= ”右边的值赋给左边
的变量。
赋值
• 和数学不同, a=b在数学中表⽰关系,即 a
和 b的值⼀样;⽽在程序设计中, a=b表⽰
要求计算机做⼀个动作:将 b的值赋给 a。
关系是静态的,⽽动作是动态的。在数学
中, a=b和 b=a是等价的,⽽在程序设计
中,两者的意思完全相反
初始化
• 当赋值发⽣在定义变量的时候,就像程序
1中的第 7⾏那样,就是变量的初始化。虽
然 C语⾔并没有强制要求所有的变量都在
定义的地⽅做初始化,但是所有的变量在
第⼀次被使⽤(出现在赋值运算符的右边)
之前被应该赋值 ⼀次
• 如果没有初始化?
变量初始化
• = ;
• int price = 0;
• int amount = 100;
• 组合变量定义的时候,也可以在这个定义
中单独给单个变量赋初值,如:
• int price = 0, amount = 100;
读整数
• scanf("%d", &price);
!
• 要求 scnaf这个函数读⼊下⼀个整数,读到
的结果赋值给变量 price
• ⼩⼼ price前⾯的 &
如果输⼊的不是整数会怎样?
表达式
• “= ”是赋值运算符,有运算符的式⼦就叫
做表达式。
• price=0;
• change=100-price;
变量类型
• int price = 0;
• 这⼀⾏,定义了⼀个变量。变量的名字是
price,类型是 int,初始值是 0。
• C是⼀种有类型的 语⾔,所有的变量在使
⽤之前必须定义或声明,所有的变量必须
具有确定的数据类型。数据类型表⽰在变
量中可以存放什么样的数据,变量中只能
存放指定类型的数据,程序运⾏过程中也
不能改变变量的类型。
第⼆个变量
• int change = 100 - price;
• 定义了第⼆个变量 change
• 并且做了计算
C99!
ANSI C
• 只能在代码开头的地⽅定义变量
C99 ANSI C
常量
• int change = 100 - price;
• 固定不变的数,是常数。直接写在程序⾥,
我们称作直接量( literal)。
• 更好的⽅式,是定义⼀个常量:
• const int AMOUNT = 100;
C99!
常量
• int change = 100 - price;
• 100这个固定不变的... 更多>>