C++语言语言讲解:变量的概念 2018-02-23 11:57:24 | 作者:宋海青 | 阅读量:1011

第二课 变量的概念

 

问题:放假了,小明和妈妈一起去超市买东西;他们决定买15冰激凌和25碎碎冰放到冰箱过夏天(好清凉的夏天啊),超市的冰激凌3元一个,碎碎冰21,请问小明和妈妈总共要付多少钱?

 

 

 

问题:农场的张阿姨到集市上卖鸡,张阿姨有2种鸡,公鸡和母鸡;公鸡50/只,大母鸡30/只。

王师傅向张阿姨买了22只公鸡,12只母鸡,请问王师傅应该给张阿姨付多少钱,请编程求解?

 

#include <iostream>

using namespace std;

 

int main(){

         cout<<22*50+12*30<<endl;

}

 

保存的快捷键:ctrl + s

 

1、变量的概念

通过一个字母或英文单词来代表一个数值!

x = 2

y = 3

2 * x + 3 * y

 

常见的C++的类型:int(整数)、double(小数)

 

例子:假设一个长方形的两条边,x = 2y = 3,请通过编程计算该长方形的面积和周长!

#include <iostream>

using namespace std;

 

int main(){

         //定义变量x,是整数类型

    int x;

    //为变量x赋值为2

    x = 2;

   

    //定义变量的同时,为变量赋值

         int y = 3;

        

         //计算

         int c = (x + y) * 2;

         int s = x * y;

        

         cout<<c<<endl;

         cout<<s<<endl;

}

 

注意点:

A、在C++中变量定义后如果不赋值,那么他的值是未知的,因此变量定义后,在使用之前一定要赋值

B、在一个C++main方法中,不能定义同名的变量

CC++中整数和整数运算得到整数,整数和小数运算得到小数

D、定义整数变量不能存放小数,但定义小数变量可以存放整数

 

例子:小明同学期末考试,语文考试成绩为x = 98分,数学成绩为y = 99分;请用变量的概念来计算,小明同学期末考试的总分多少?平均分是多少?

注意: 总分用变量s表示,平均分用变量d表示,请注意平均分可能有小数!

#include <iostream>

using namespace std;

 

int main(){

         //定义成绩

         int x = 98;

         int y = 99;

        

         //计算

         int s = x + y;

         double d = s * 1.0 / 2;

         cout<<s<<endl;

         cout<<d<<endl;

}

 

例子:上面的案例,请修改成从键盘读入一个同学的语文和数学成绩,计算他的成绩的总分和平均分!

#include <iostream>

using namespace std;

 

int main(){

         //定义xy存放成绩

         int x,y;

         //从键盘读入两个变量的值

         cin>>x;

         cin>>y;

        

         int s = x + y;

         double d = s * 1.0 / 2;

         cout<<s<<endl;

         cout<<d<<endl;

}

 

2、拆位运算:拆出一个数的各个位

使用的算法:/ %

56 = 5 * 10 + 6 * 1

 

例子:从键盘读入一个任意的两位数,求出这个两位数的十位和个位的和是多少?

比如:读入34,输出7

#include <iostream>

using namespace std;

 

int main(){

         //从键盘读入n的值(代表2位数),ab分别代表十位和个位,需要计算

         int n,a,b;

         cin>>n;

         a = n / 10;

         b = n % 10;

        

         //输出

         cout<<a + b<<endl;

}

 

例子:求任意三位数各个数位上数字的和

对于一个任意的三位自然数X,编程计算其各个数位上的数字之和S。

例如,读入123,输出6!

 

123 / 10 = 12   123 / 100 = 1    123 / 1000 = 0

123 % 10 = 3    123 % 100 = 23   123 % 1000 = 123

 

总结规律:

当我们使用/运算时(/10 100 1000),相当于是将在原来数字的尾数去掉!

当我们使用%运算时(%10 100 1000),相当于是获取原来数字的尾数!

 

任何数 % 10 = 个位

 

n代表三位数(456):

百位 = n / 100

个位 = n % 10

十位 = n / 10 % 10

     = n % 100 / 10

 

#include <iostream>

using namespace std;

 

int main(){

    int n,a,b,c;

    cin>>n;

    a = n / 100;

    c = n % 10;

    b = n / 10 % 10;//n % 100 / 10

    cout<<a+b+c<<endl;

   

}

 

 

例子:输入一个三位数,把个位和百位对调后输出

输入一个三位自然数,然后把这个数的百位数与个位数对调,输出对调后的数

#include <iostream>

using namespace std;

 

int main(){

    int n,a,b,c;

    cin>>n;

    a = n / 100;

    c = n % 10;

    b = n / 10 % 10;//n % 100 / 10

    cout<<c * 100 + b * 10 + a<<endl;

   

}

 

作业:

例子:算算和是多少

输入一个三位正整数,然后与它倒过来的数相加,输出和。
如:输入167,则和为167+761=928

#include <iostream>

 

using namespace std;

 

int main(){

    int n;//读入的3位数

    int a,b,c;//代表n的个十百位

    cin>>n;

    a = n / 100;

    b = n / 10 % 10;

    c = n % 10;

   

    cout<<c * 100 + b * 10 + a + n<<endl;

}

 

 

例子:请从键盘任意读入一个四位数,求这个四位数倒过来的数是多少?

比如,输入1356,则输出为6531

#include <iostream>

using namespace std;

 

int main(){

         //n代表4位数,abcd分别代表千位、百位、十位、个位

         int n,a,b,c,d;

         //读入4位数

         cin>>n;

         //求千位,去掉三个尾数,用/

         a = n / 1000;

         //求百位,去掉2个尾数后,再得到1个尾数

         //比如2345 / 100 = 23 % 10 = 3

         b = n / 100 % 10;

         //求十位,去掉1个尾数后,再得到1个尾数

         //比如2345 / 10 = 234 % 10 = 4

         c = n / 10 % 10;

         //个位,得到1个尾数

         d = n % 10;

        

         //组成新数

         cout<<d * 1000 + b * 100 + c * 10 + a;

}

在线观看云储存

快速搭建独立网校,免费观看
热门科目视频教程。

咨询金牌顾问

专属顾问免费咨询,全程配套跟踪
服务,让您学有所得。

实时更新视频教程

及时更新视频教程。

东方博宜教育咨询江苏有限公司 版权所有 苏ICP备12080391号
忘记密码?

关注的课程(多选)