当前课程知识点:C++语言程序设计基础 >  第2章 C++简单程序设计(一) >  基本数据类型、常量、变量 >  程序举例

返回《C++语言程序设计基础》慕课在线视频课程列表

程序举例在线视频

程序举例

程序举例

 

题目:读入并显示整数

l  主要知识点:

n  常量

u  在源程序中直接写明的数据,其值在整个程序运行期间不可改变,这样的数据称为常量。

n  变量

u  在运行过程中从计算机的外部设备(例如键盘、硬盘)读取的,这些数据的值在程序运行过程中允许改变,这样的数据称为变量

n  从键盘输入数据

u  iostream类的对象cin>>操作,可以从标准输入设备(通常是键盘)读入数据

n  数据的存储

u  为了存储数据,需要预先为这些数据分配内存空间。

u  变量的定义就是在给变量命名的时候分配内存空间。

l  源代码

#include <iostream>

using namespace std;

int main()

{

     int radius;    

     cout<<"Please enter the radius!\n";

     cin>>radius;   

     cout<<“The radius is:”<<radius<<‘\n’;   

        cout<<“PI is:”<<3.14<<‘\n’;

     cout<<"Please enter a different radius!\n";

     cin>>radius;   

     cout<<"Now the radius is changed to:" 

             <<radius<<‘\n’;

     return 0;

}

 

题目:为常量命名

l  主要知识点:符号常量

l  源代码

#include <iostream>

using namespace std;

int main()

{   const double pi(3.14159);           

     int radius;       

     cout<<"Please enter the radius!\n";

     cin>>radius;   

     cout<<"The radius is:"<<radius<<'\n';     

     cout<<"PI is:"<<pi<<'\n';            

     cout<<"Please enter a different radius!\n";

     cin>>radius;   

     cout<<"Now the radius is changed to:"<<radius<<'\n';

     cout<<"PI is still:"<<pi<<'\n‘;

     //cin>>pi;

     return 0;

}

l  运行结果:

Please enter the radius!

2

The radius is:2

PI is:3.14159

Please enter a different radius!

3

Now the radius is changed to:3

PI is still:3.14159

 

题目:变量的初始化

l  主要知识点:变量的初始化

n  虽然变量的值是可以在运行时获得的,但是在定义变量时也可以进行初始化,而且应该提倡进行初始化;

n  未经初始化的变量,其值可能是随机的。如果误用了未经初始化也没有给予确定值的变量,就会引起错误。

l  源代码

#include <iostream>

using namespace std;

int main()

{

     const double pi(3.14159);           

     int radius(0);  

     cout<<"The initial radius is:"<<radius<<'\n';         

     cout<<"PI is:"<<pi<<'\n

     cout<<"Please enter a different radius!\n";

     cin>>radius;   

     cout<<"Now the radius is changed to:"<<radius<<'\n';

     cout<<“PI is still:”<<pi<<‘\n’;     

     return 0;

}   


下一节:算术运算与赋值运算

返回《C++语言程序设计基础》慕课在线视频列表

程序举例课程教案、知识点、字幕

欢迎接续学习C++语言程序设计

下面来给大家演示一个实例

好 这个例子是一个补充的例题

以后在这个课程中

我的题号有补充几几的

这些在我的教材上就没有

大家可以参考

我在网上给的学习资料

这个例题就是读入并显示整数

在里面用到的主要知识点

就是用到了常量

常量是在语言程序中

直接写明了数据

还用到了变量

还用到了从键盘输入数据的

这个操作

我们在此之前看到了

怎么样用cout向显示器输出数据

那么在这个例题中呢

我们将要使用iostream类的

预定义好的对象cin

它的提取操作

这个提取操作呢

是从键盘的输入流中提取数据

也叫做标准输入流类的对象

那另外呢 这里面我们还用到了

数据的存储

为了存储数据呢

要为这些数据来分配存储空间

变量定义实际上就是给数据

分配存储空间

好 现在我们来看这段程序代码

我们看到在主函数中

首先定义了一个变量radius

这个变量定义之后并没有初始化

效果会是什么呢

等一会我们会在编译环境中看

然后接下来输入一行提示信息

然后从键盘读入值

放到radius里面

由cin这个对象的提取操作符

来达到这个效果的

然后接下来又是输出提示信息

The radius is

接着我们看到

把radius这个变量自己放到

插入运算符后面去了

也就是放到这个cout

所代表的输出流里面去了

插到输出流里面去

它就送到显示器上了

然后接下来呢

再输出提示信息以及3.14

这个常量

它们都会显示到显示器上

那么后面再输出一行提示信息

请用户输入一个不同的

radius变量值

所以这个地方充分体现了

radius它就是一个变量

可以再次

从键盘读入一个不同的值

放到radius里面

然后我们用cout再输出radius

进行一下验证

好 现在呢

我在这个编译环境中

给大家演示一下这个运行的过程

那么这回我们使用单步调试

在这个调试窗口底下呢

大家看有一个逐过程

有个逐语句

f10是一行一行的直行

等我们学了第3章的函数以后

我会教大家用f11

追踪到函数里面

目前我们用这个热键f10

或者这个菜单项都可以

好 那么进来执行了一个单步了

执行了一个单步

这个时候大家看radius这个变量

是在这儿

但是它的值是无效的数据

不确定的数据

也就是以前碰巧里面

有什么垃圾数据就是什么

那么再走一步

现在我们看radius里面的值

仍然是不确定的

那在这个地方呢

输出一个提示信息

走一步以后我们看一下这个效果

现在这个提示信息已经在这个

命令行窗口中出来了 第一行

Please enter the radius出来了

接下来再执行这一步

再执行一步的话

我们就需要从键盘输入了

大家看执行到这儿

停在这儿等什么呢

等我们在这个窗口

输入一个radius值

比如说我给一个5 回车

大家看现在radius里面有值了

这是5 从键盘读入了

那接下来呢 再往下走一步

我们准备要输出什么 3.14了

在这之前 应该radius输出去了

我们再看一下

The radius is 5 有了

那我们准备输出3.14这个常量了

我们再对照看一下3.14在这儿

有了

接下来再输出一个提示信息

再走一行

就是请输入一个不同的radius值

那现在这个光标

黄色的箭头停在这个前面

表示这一行还没有执行

那么我们必须要再走一步

f10再走一步

它就等我们来输入了

这回比如说我输一个7

然后回车

大家看 这个radius它变成7了

看到变量里面的值变了

现在再输出一行的话

我们就看到运行最终的结果了

我们看到最终这个7

也输出出来了

好 现在呢我们再看一个例子

这个是为常量来命名

也就是说在这里

我们要用符号常量

我们看在主函数

也就是main函数的第一行

定义了一个double类型的常量pi

在double这个数据类型前面

有个const

说明这个pi是一个常量

它必须给一个初始值

这点我们给的3.14159

那其他的部分呢

跟前面的一个补充2_1的

那个例题是类似的

我就不再解释了

那接下来我在这个编译环境中

给大家演示一下

这个常量初始化的效果

好 现在我们在这个编译环境中看一下

这是一个常量的定义

在我return这个语句前面

设了一个断点

这样我就可以用f5

来开始这个调试

并且一直运行到断点情况为止

好 那么现在呢

我们看请输入一个radius值

我们输入一个5 回车

又输入另外一个

跟刚才一样输入一个7 回车

我们看这个pi值

它里面是3.14 什么

我们怎么看到里面

存的是3.1415899999

明明给它这3.14159吗

这个数据

都不能准确地存在里面吗

这是一个很好的例子

大家看到了浮点数在机器里面

是近似存储的

所以它可能会跟你期望的这个值

有少许的差别

所以千万不要在程序中

去比较两个浮点数它是否相等

比如说你认为它应该是相等的

但是它可能有少许的差别

它就不相等了

浮点数都是近似存储的

那么当我们要比较两个浮点数

是否相等的时候

一般是比较它们两个

相减的差是不是充分小

充分小就认为它相等了

这个后面

大家还会遇到这种情况的

现在我们想验证一个什么呢

制造一个错误

这个地方我试图修改一下

不给这个pi初始化看看会怎么样

现在先停止调试

然后我把这个给删掉

好 定义了pi 没有初始化

那我再重新编译

再重新编译这个项目 重新生成

大家看有错误信息了

提示这个pi如果不是外部的

当然我们这个不是外部

是在这里面定义的

则必须初始化常对象

所以这个就不能通过

是要初始化的

那好 现在我把它再加回来

那我再次重新生成

也就是重新编译连接

现在就成功了 现在就成功了

那么如果说我试图在程序中

比如说最后我加一行

重新定义pi pi行不行呢

这个pi有名字吗

我就给它赋值了

看看这回编译能不能通过

大家看 不能给常量赋值

又出错误信息了

所以常量虽然它有名字

跟变量一样有名字

但是你不能在程序中

改变它的值 必须初始化

而一旦初始化以后

它的值是不能再被改变的了

好 恢复以后再重新生成

这回就正确了

好 下面我再讲一个例题

演示这个变量在定义的同时

进行初始化

下面我再这个编译环境中

给大家演示这个例题

好 现在我们来看一下这个程序

跟刚才这个程序是类似的

只不过呢 这回我定义这个变量

radius的时候

也给它了一个初始值是0

给了初始化值以后呢

还是可以从键盘去输入

去改变这个值的

我们简单运行一步看一下

好 现在我们来看到

常量的初始化了

继续往下再走一步

看到这回这个变量radius的值

它就是0了 这就有0这个值了

至于变量在定义的时候

也可以这样初始化的

C++语言程序设计基础课程列表:

第1章 绪论

-导学

--第1章导学

-计算机系统简介

--计算机系统简介

--计算机系统简介 测试题

-计算机语言和程序设计方法的发展

--计算机语言和程序设计方法的发展

--计算机语言和程序设计方法的发展 测试题

-面向对象的基本概念

--面向对象的基本概念

--面向对象的基本概念 测试题

-程序的开发过程

--程序的开发过程

--程序的开发过程 测试题

-信息的表示和储存

--计算机中的信息与存储单位

--计算机的数字系统

--数据的编码表示

--信息的表示和储存 测试题

-实验指导

--实验一:VS开发环境介绍

第2章 C++简单程序设计(一)

-导学

--第二章导学

-C++语言概述

--C++的特点和程序实例

--C++字符集和词法记号

--C++语言概述 测试题

-基本数据类型、常量、变量

--基本数据类型、常量、变量

--程序举例

--基本数据类型、常量、变量 测试题

-运算与表达式

--算术运算与赋值运算

--逗号运算、关系运算、逻辑运算和条件运算

--Sizeof运算、位运算

--运算优先级、类型转换

--运算与表达式 测试题

-实验二:简单程序设计(上)

--实验二:简单程序设计(上)

第2章 C++简单程序设计(二)

-数据的输入和输出

--数据的输入和输出

--数据的输入和输出 测试题

-选择结构

--if语句

--switch语句

--选择结构 测试题

-循环结构

--循环结构——while语句

--do-while语句

--for语句

--嵌套的控制结构、其他控制语句

--循环结构 测试题

-自定义类型

--自定义类型

--自定义类型

-第2章小结

--第二章小结

-实验二:C++简单程序设计(下)

--实验二C++简单程序设计(下)

第3章 函数

-导学

--导学

-函数定义

--函数定义

--函数定义 测试题

-函数调用

--函数调用(例3-1)

--例3-2

--例3-3

--例3-4

--例3-5

--例3-6

--函数调用 测试题

-嵌套与递归

--函数的嵌套调用(例3-7)

--函数的递归调用(例3-8)

--例3-9

--例3-10

--嵌套与递归 测试题

-函数的参数传递

--函数的参数传递

--函数的参数传递 测试题

-引用类型

--引用类型(例3-11)

--引用类型 测试题

-含有可变参数的函数

--含有可变参数的函数

--含有可变参数的函数 测试题

-内联函数

--内联函数(例3-14)

--内联函数 测试题

-constexpr函数

--constexpr函数

--CONSTEXPR函数课后习题

-带默认参数值的函数

--带默认参数值的函数

--默认参数值例(3-15)

--带默认参数值的函数 测试题

-函数重载

--函数重载(例3-16)

--函数重载 测试题

-C++系统函数

--C++系统函数(例3-17)

--C++系统函数习题

-第3章小结

--第三章小结

-实验三(上)函数的应用

--实验三(上)函数的应用

-实验三(下)函数的应用

--实验三(下)函数的应用

第4章 类与对象

-导学

--导学

-面向对象程序的基本特点

--面向对象程序的基本特点

--面向对象程序的基本特点 测试题

-类和对象

--类和对象的定义

--类和对象的程序举例

--类和对象 测试题

-构造函数

--构造函数基本概念

--构造函数例题(1)——例4-1

--构造函数例题(2)——例4-2

--委托构造函数

--复制构造函数

--复制构造函数调用举例

--构造函数 测试题

-析构函数

--析构函数

--析构函数 测试题

-类的组合

--类的组合

--类的组合程序举例

--前向引用声明

--类的组合 测试题

-UML简介

--UML简介

--UML简介课后习题

-结构体与联合体

--结构体(例4-7)

--联合体(例4-8)

--结构体与联合体 测试题

-枚举类

--枚举类

--枚举类 测试题

-第4章小结

--第四章小结

-实验四(上)

--实验四(上)

-实验四(下)

--实验四(下)

第5章 数据的共享与保护

-导学

--导学

-标识符的作用域与可见性

--标识符的作用域与可见性

--标识符的作用域与可见性 测试题

-对象的生存期

--对象的生存期

--对象的生存期 测试题

-类的静态成员

--静态数据成员(例5-4)

--静态函数成员(例5-5)

--类的静态成员 测试题

-类的友元

--类的友元(例5-6)

--类的友元 测试题

-共享数据的保护

--共享数据的保护(例5-7)

--共享数据的保护 测试题

-多文件结构和预编译命令

--多文件结构和预编译命令(例5-10)

--多文件结构和预编译命令 测试题

-第5章小结

--小结

-实验五

--实验五

第6章 数组、指针与字符串(一)

-导学

--导学

-数组的定义与初始化

--数组的定义与使用

--数组的储存与初始化

--一维数组应用举例

--数组的定义与初始化 测试题

-数组作为函数的参数

--数组作为函数参数(例6-2)

--数组作为函数的参数 测试题

-对象数组

--对象数组

--对象数组 测试题

-基于范围的for循环

--基于范围的for循环

-指针的定义和运算

--指针的概念、定义和指针运算

--指针的初始化和赋值

--指针的算术运算、关系运算

--指针的定义和运算 测试题

-综合实例

--综合实例

-实验六(上)

--实验六上

第6章 数组、指针与字符串(二)

-指针与数组

--用指针访问数组元素

--指针数组

--指针与数组 测试题

-指针与函数

--以指针作为函数参数

--指针类型的函数

--指向函数的指针

--指针与函数 测试题

-对象指针

--对象指针

--对象指针 测试题

-动态内存分配

--动态分配与释放内存

--申请和释放动态数组(一)

--申请和释放动态数组(二)

--动态内存分配 测试题

-智能指针

--智能指针

-vector对象

--vector对象

--vector对象 测试题

-对象复制与移动

--深层复制与浅层复制

--移动构造

--对象复制与移动 测试题

-字符串

--C风格字符串

--string类

--字符串 测试题

-第6章小结

--第六章小结

-综合实例

--综合实例

-实验六(下)

--实验六(下)

程序举例笔记与讨论

也许你还感兴趣的课程:

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