当前课程知识点:高级语言程序设计 >  顺序结构程序设计 >  2.1 变量的定义和使用 >  变量的定义和使用

返回《高级语言程序设计》慕课在线视频课程列表

变量的定义和使用在线视频

变量的定义和使用

下一节:数据类型简介

返回《高级语言程序设计》慕课在线视频列表

变量的定义和使用课程教案、知识点、字幕

大家好

我们开始学习编写程序

让计算机模仿计算器的计算功能

求两个数的和

请看下面的程序

我们可以用printf语句

直接输出表达式12+34的值

这里%d是格式字符

表示以10进制格式输出12+34的值

那如果我们想让它计算56与78的和呢

就得修改源代码

将12+34改为56+78

重新编译链接 执行

如果我们要计算不同数字的和

每次都得修改程序

再重新编译链接

如果希望这个程序

一旦编译好以后

每次运行时可以输入两个数字

计算机就能根据我们输入的数字

计算出它们的和

再输出

怎么才能做到这一点呢

也就是要把输入的数字存放在计算机里

计算机里内存是可以存储数据的

在内存中定义变量

就可以存放我们输入的数字了

现在在程序里定义3个变量

a和b用来存放输入的两个数

sum用来存放和

请看程序

这一句定义了三个整型变量

a=12

是给将12送到变量a保存起来

34送到变量b里保存起来

这一条语句的意思的是

将a与b的值从内存取出来

求和后再送到sum里保存

printf语句输出变量sum的值

在程序中不能改变的量是常量

如a=12中的12

b=34中的34

在程序执行过程中

值是可以改变的量叫变量

如a b sum

现在我们来看看

如何定义变量

这个是变量定义的语法格式

前面是数据类型名

后面是变量的名字

这是变量定义的实例

这里一共定义了4种类型的变量

int型变量a

float型变量b

double型变量c

字符型变量d

注意变量必须要先定义 后使用

定义变量时要给变量取名字

变量名只能由英文字母 数字和下划线组成

第一个字符不能是数字

只能是字母或下划线

另外有一些单词是C语言的关键字

是不能够用来做变量名的

上面这一排是合法的变量名

下面这一排是不合法的变量名

变量是用来存放数据

我们可以先定义变量

再用赋值语句将常量或表达式的值送到变量中

我们还可以在定义变量的同时给变量赋值

运行这段程序

结果是什么

这段代码少了给a和b赋值的语句

输出sum的值是一个随机数

定义变量是初始化变量的最好时机

不被初始化的变量

它的值是随机数

再来看变量的值是如何输出的

printf语句可以将变量的值输出到屏幕

printf函数括号里的第一个参数是格式控制字符串

%d就是表示以十进制整型格式来输出数据

第二个参数是我们真正要输出的东西

可以是表达式

可以是一个变量

可以是多个变量

现在有了变量来存放数据

但计算机每次运行这个程序

结果还是一样的

怎么能够在程序运行的时候

将数据从键盘输入到变量里去呢

C标准函数库函数

不仅提供了格式输出printf函数

还提供了配套的格式输入scanf函数

我们来看看scanf函数的使用格式

与printf函数很类似

scanf函数括号里有两个参数

第一个参数也是格式控制字符串

%d就是表示以十进制整型格式来输入数据

第二个参数是地址列表

地址列表是由若干个变量地址组成的列表

可以用scanf函数一次输入一个变量的值

也可以用scanf函数一次输入两个变量的值

a b前面的符号

代表的是取地址运算符

地址列表里

一个是变量a的地址

一个是变量b的地址

在一次输入一个数据的时候

用回车告诉计算机输入数据结束

在一次输入多个数据的时候

输入数据之间

可以用空格

用Tab或者用回车分隔开

现在我们再来看如何让计算机求两个数字的和

首先定义三个变量

通过格式输入scanf函数

把要求和的两个数送到变量里保存起来

第2步

让计算机根据我们的需求

对输入的数据进行计算

有可能是相加

有可能是相减

这里我们是相加

或者以后让计算机做更复杂的操作

并将这个计算的结果也保存在变量里

最后计算机将计算得到的结果

用printf语句输出到屏幕给我们看

如果一个程序没有任何输出

那这个程序就没什么用

下面来看程序源代码

我们将a=12;和b=34;这两条语句

修改为scanf语句

当程序运行到这两条语句时

会等待我们从键盘输入数据

在我们输入数据之后

计算机将a b的和计算出来

保存在sum变量中

最后用printf函数

将sum的值输出到屏幕给我们看

为了使得我们的程序用户界面更加友好

在输入数据之前

可以用printf函数输出提示信息

提示用户输入几个数据

输入什么类型的数据

现在我们的程序

可以根据输入的两个整数

计算后输出它们的和

如果要让计算机存放数据

一定要定义变量

变量就像饭店的房间

对某个房间来说

一拨客人走了

另一拨客人可以进来

虽然房间不变

但房间里住的人在变

在C程序中

变量就是建立在内存里的房间

它用来存储数据

存放在变量中的数据就称为变量值

为了区别不同的房间

人们给每个房间起一个名字

比如百合厅 玫瑰厅等

那么我们变量呢

每个变量也有变量名

饭店有会议室 餐厅 客房等

客房又有单间 双人间 三人间等

大小 档次之分

变量有类型之分

变量的数据类型决定了可以容纳的数据的种类

也决定了所占单元的大小

每个房间有自己的房间号

而且房间名与房间号有对应关系

那么每个变量有自己的存储地址

而且变量名与存储地址也有一一对应的关系

总之变量是内存中的存储单元

具有值 名字 类型 地址等属性

对变量进行小结

变量是在程序执行期间其值可以改变的量

变量在使用之前必须被定义

每一个变量有名字 类型 地址 值等属性

对变量赋值

是用新值去覆盖旧值的过程

可以用scanf函数从键盘输入数据赋给给变量

可以用printf函数从内存中读出变量的值

今天我们讲了变量的定义和使用

关于这个内容就讲到这里

谢谢大家

高级语言程序设计课程列表:

程序设计和C语言

-1.1 计算机程序和计算机语言

--计算机程序和计算机语言

--致敬先辈:伟大的C语言之父——丹尼斯·里奇 程序员

-1.2 C程序的构成

--C程序的构成

--当前主流程序设计语言各自都有什么优势?

-1.3 C语言编辑、编译、运行(VC++2010学习版)

--C语言编辑、编译、运行(VC++2010学习版)

-练习题

顺序结构程序设计

-2.1 变量的定义和使用

--变量的定义和使用

-2.2 数据类型

--数据类型简介

--整型数据

--实型数据

-2.3 格式输出和格式输入

--格式输出printf函数

--格式输入scanf函数

--单个字符的输入输出

-2.4 运算符和表达式

--运算符和表达式

-2.5 结构化程序设计入门

--结构化程序设计入门

-练习题

选择结构程序设计

-3.1 为什么要用选择结构解决问题

--为什么要用选择结构解决问题

-3.2 如何正确表示选择结构中的条件

--如何正确表示选择结构中的条件

-3.3 用if语句及if语句嵌套实现选择结构

--用if语句及if语句嵌套实现选择结构

-3.4 用switch语句实现选择结构

--用switch语句实现选择结构

-练习

循环结构程序设计

-4.1 循环的引入

-- 为什么要用循环结构解决问题

-4.1 循环的引入--作业

-4.2 用while语句实现循环

--用while语句实现循环

-4.3 用do-while语句实现循环

-- 用do-while语句实现循环

-4.4 用for语句实现循环

-- 用for语句实现循环

-4.4 用for语句实现循环--作业

-4.5 何时需要用循环的嵌套

--何时需要用循环的嵌套

-4.6 如何提前终止循环和提前结束本次循环

--如何提前终止循环和提前结束本次循环

-习题--作业

数组

-5.1 数组类型的引入

--数组类型的引入

-5.2 一维数组的定义和初始化

--一维数组的定义和初始化

-5.3 一维数组的使用

--一维数组的使用

-5.4 二维数组的定义和初始化

--二维数组的定义和初始化

-5.5 二维数组的使用

--二维数组的使用

-习题--作业

指针

-6.1 什么是指针

--什么是指针

-6.2 指针类型及相关概念

--指针类型及相关概念

-6.3 指针变量的定义、赋值与使用

--指针变量的定义、赋值与使用

-6.4 指针的运算

--指针的运算

-6.5 指针与一维数组

--指针与一维数组

-6.6 指针的指针

--指针的指针

-6.7 指针与二维数组

--指针与二维数组

-习题--作业

函数

-7.1 为什么要自定义函数

--为什么要自定义函数

-7.2 函数的定义

--函数的定义

-7.3 函数的调用

--函数的调用

-7.4 函数参数的传递

--函数参数的传递

-7.5 函数的嵌套调用和递归调用

--函数的嵌套调用和递归调用

-7.6 变量的作用域和存储类型

--变量的作用域和存储类型

-习题--作业

字符串

-8.1 字符串的存储及输入输出

--字符串的存储及输入输出

-8.2 系统字符串处理函数

--系统字符串处理函数

-8.3 自定义字符串处理函数

--自定义字符串处理函数

-习题--作业

结构体和共用体

-9.1 结构体类型的定义

--结构体类型的定义

-9.2 结构体变量及指针变量的定义及使用

--结构体类型变量和指针变量的定义和使用

-9.3 结构体变量和指针变量作函数的参数

--用结构体变量和指向结构体的指针作函数参数

-9.4 结构体数组的定义和使用

--结构体数组的定义和使用

-9.5 共用体类型和枚举类型

--共用体和枚举类型

-习题--作业

动态内存分配

-动态内存分配--习题

文件

-习题--作业

变量的定义和使用笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。