c++入门-- 变量与基本类型
如果你还没有接触过编程,想先体验一下编程的乐趣。请看我的c++入门(1)--输入输出,代码运行顺序及其控制。此文开始学习变量以及基本类型。
原始内置类型(Primitive Build-in Types)
两类:算术类型(arithmetic types)和void。我们主要讲解算术类型。
算术类型(Arithmetic Types)
分为两类:整形(integral types)和浮点型(floating-point types)。其中整形又包含字符型(character types)和布尔型(boolean types)。
作为初学者,首先要掌握的类型有:bool(布尔类型)、int(整形)、float(单精度浮点型)、double(双精度浮点型)、char(字符型)。
下面依次来看一下:
bool(布尔类型)对应着布尔代数。它的值只可能有两种:true (1)/ false(0)。
int(整形)对应着数学中的整数:-2,-1,0,1,2...
float(单精度浮点型)跟double(双精度浮点型)都是对应着数学中的小数:-1.3,2.78.... 两者的区别是:float只能表示6位有效数字,而double可以表征10位有效数字的小数。
char(字符型)都应着字符。当然字符既有数字(1,2,3...),也有符号(。,!...)还有字母(a,b,c...A,B,C...)
代码样例
让我们通过代码具体体会一下如何在代码中使用这些类型。
计算两个整数相加。
#include<iostream>
using namespace std;
int main() {
int a = 1;
int b = 2;
int c = a + b;
cout << c << endl;
return 0;
}
计算两个小数相加。
#include<iostream>
using namespace std;
int main() {
double a = 1.1;
double b = 2.2;
double c = a + b;
cout << c << endl;
return 0;
}
判断两个数字相加是否正确。
#include<iostream>
using namespace std;
int main() {
double a = 1.1;
double b = 2.2;
double c = a + b;
double d = 3.3;
cout << c << endl;
if (c - d < 0.0000000001) {
cout << "yes" << endl;
} else {
cout << "no" << endl;
}
return 0;
}
代码练习
项目1:实现一个口算能力测试程序。
#include<iostream>
using namespace std;
int main() {
double a;
cout << "3453 + 28594 = " << endl;
cin >> a ;
if ( a-3453-28594 == 0)
cout << "yes" << endl;
else
cout << "no" << endl;
cout << "8932752+932 = " << endl;
cin >> a ;
if (a-8932752-932 == 0)
cout << "yes" << endl;
else
cout << "no" << endl;
cout << "8499384+9508930-8395 = " << endl;
cin >> a ;
if (-0.00000001 < a-8499384-9508930+8395 && a-8499384-9508930+8395< 0.00000001)
cout << "yes" << endl;
else
cout << "no" << endl;
cout << "948494+93290283-2234 = " << endl;
cin >> a ;
if (-0.00000001 < a-948494-93290283+2234 && a-948494-93290283+2234 < 0.00000001)
cout << "yes" << endl;
else
cout << "no" << endl;
cout << "452+94950 = " << endl;
cin >> a ;
if (-0.00000001 < a-452-94950 && a-452-94950 < 0.00000001)
cout << "yes" << endl;
else
cout << "no" << endl;
cout << "3258+1298283 = " << endl;
cin >> a ;
if (-0.00000001 < a-3258-1298283 && a-3258-1298283 < 0.00000001)
cout << "yes" << endl;
else
cout << "no" << endl;
return 0;
}