C++蓝桥等考导学/二级:数据类型与变量/之三:基础数据类型(6数据类型)

一、观看视频

01】ASCII编码【02】数据类型【03】程序的顺序结构

04】简单计算器

二、研读学生讲义

【学生讲义】01】ASCII编码【学生讲义】02】数据类型【学生讲义】03】程序的顺序结构

【学生讲义】【04】简单计算器

三、练习题(不清楚回头查看有关视频或讲义)

01】计算机只能储存0和1两个符号,那么它如何储存像‘a’、‘b’这样的符号呢?原来用0和1可以准确表示任何不是很大的正整数(因为正整数都是由比它小1的整数加1而得到的,例如0+1=1,1+1=2,2+1=3……,由二进制的进位规则可以得到结论),那么把符号与唯一的一个正整数一一对应,这就是编码。其中第一套用于计算机的编码系统是什么?它的英文全称和中文全称?制订单位的中文全称和英文全称与简称?

02】填空:

 

03】我们不难发现二级制数从低位到高位的每一位的1代表的数是一个首项1、比是2的等比数列:1、2、4、8、16、32、64、128、……,那么具体一个正整数,例如m的ASCII码是109,它在64到128之间,109-64=45;45在32到64之间,45-32=13;13在8到16之间,13-8=5;5在4到8之间,5-4=1;所以109=64+32+8+4+1,即1位是1,2位是0,4位是1,8位是1,16位是0,32位是1,64位是1,它的二进制ASCII编码是:01101101。如下图,下标表示进制:

 

请把下面的二进制数转为十进制数;把十进制数转为二级制数:

(01011101)2=

(122)10 = 

4】在ASCII字符表中找出0、9、A、Z、a、z的的编码。

5】指出下面数值的数据类型:

①  123  -400

②  123.45  1.03E+8

③  A  b

④  true  false

6】根据整型变量的取值范围可以定义8种整型类型,请在“数据类型”栏目填入这8种整型类型的中文名称:

 

7】找出下面整型数据类型定义错误的语句:

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;//整数类型定义 int main(){    int a;    short b;    long long c;    long d;    unsigned e;    unsigned long long int f;    unsigned long short k;    long int p;    unsigned long q;    return 0;}

7】表示实数(在计算机中也称浮点数)的数据类型有3种,请把它们的中文名称填写在“数据类型”栏目中:

 

8】找出下面实数(浮点数)数据类型定义错误的语句:

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;//浮点数类型定义 int main(){    float a;    double b;    long double c;    long float d;    return 0;}

9】表示字符的数据类型的类型标识符是char,它占用多少字节,数值范围是多少(ASCII码表范围)?

10】表示布尔值的数据类型标识符是bool,它占用多少字节,它的有多少个,分别是什么?

11】下面关于运算符sizeof的论述,错误的是:

①运算符sizeof可以用来计算一个变量(对象)或一种数据类型所占用的内存字节数。

②已经定义的变量,但还没有赋值,是不可以用运算符sizeof会发生错误,例如下面的程序:

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;//sizeof的使用 int main(){    float a;    cout << sizeof(a) << endl;  return 0;}

③如果一个变量已经被定义和赋值(例如 int a=5;),那么sizeof(a)和sizeof(5) 是等价的。

④如果一个变量已经被定义(例如 int a;),那么sizeof(a)和sizeof(int)的结果是一样的。

⑤ sizeof只能作用于已定义的变量名(例如 int a; sizeof(a)),不可作用于数据类别名称(例如 sizeof(int))。

12】程序的顺序结构的特点是什么?

13】下面四段代码,分别是加、减、乘、除的哪种?

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;int main(){    double x, y;    cout << "Please input the first addend" << endl;    cin >> x;    cout << "Please input the second addend" << endl;    cin >> y;    cout << x << "+" << "y" << "=" << x+y << endl;   return 0;}

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;int main(){    double x, y;    cout << "Please input minuend:" << endl;    cin >> x;    cout << "Please input substrahend:" << endl;    cin >> y;    cout << x << "-" << "y" << "=" << x-y << endl;   return 0;}

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;int main(){    double x, y;    cout << "Please input the first factor:" << endl;    cin >> x;    cout << "Please input the second factor:" << endl;    cin >> y;    cout << x << "*" << "y" << "=" << x*y << endl;   return 0;}

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

· 

#include<iostream>using namespace std;int main(){    double x, y;    cout << "Please input dividend:" << endl;    cin >> x;    cout << "Please input devisor:" << endl;    cin >> y;    cout << x << "/" << "y" << "=" << x/y << endl;   return 0;}

14】OpenJudge练习

①【OpenJudge-1.2-01】整型数据类型储存空间的大小

②【OpenJudge-1.2-02】浮点型数据类型储存空间的大小

③【OpenJudge-1.2-03】其他基本数据类型储存空间的大小

④【OpenJudge-1.2-10】Hello, World!的大小。