C++程序设计
例如,正确的变量名字: A,a, add, find, sum, w2000_1,
_2003
不正确的变量名字:float, main, 2003_1, new.003
2.3.2 变量的作用:放数字、字符、字符串。
2.3.3 变量的定义:
2.3.3.1. 整型变量的定义及赋值
int a,b,c=2;
int x=y=z=10;
int m=2; int n=3;
long int sum=0,add;
long hello;
整型变量又分:
1. 基本整型变量 int a; /*在内存占两个字节的地址单元*/
2. 短整型变量 short b;
3. 长整型变量 long c; /*在内存占四个字节的地址单元*/
4. 无符号基本整型变量 unsigned int d; (65535)
5. 无符号短整型变量 unsigned short e;
6. 无符号长整型变量 unsigned long f;。
说明:
1.一个整型变量在内存占两个字节的地址单元。
2. 无符号整型变量比有符号整型变量允许的数值大一倍加
1。
3.短整型变量与基本整型变量允许的数值相同。
4. 长整型变量允许的数值是:-2147483648—2147483647。
5.一个长整型变量在内存占四个字节地址单元。
6. 变量说明且未赋初值时,变量中的值是任意(随机)的。
问题:
1. 为什么一个整型变量只能容纳-32768 到 32767
2. 求 10!时其结果使用什么类型的变量?
2.3.3.2. 实型变量的定义及赋值
float a,b,ccc=3.1415; /* (单精度实型,6--7 位有效位)*/
float sum=0.0;
double f1, f2=1.414d12 /*双精度实型变量,有效位 16--17
位*/
float new=2.713e3;
long double t1;
说明:变量说明且未赋初值时,变量中的值是 任意(随
机)的。
注意赋值和计算时的舍入误差
如:float x=3.1415926 实际输出为:
2.3.3.3. 字符变量的定义及赋值
char a=’m’; 一个字符变量在内存占一个字节的地址单
元。
char b,c,d;
char m=65,n=a+1;
2.3.3.4. 字符串变量的定义及赋值
char a[10];
char b[20]=”hello”, c[10]={“thank you”};
char str[5][10]={“”,””,”news”,”ok”,”please”};
错误的定义和赋值:char d[8]={“computer”};
说明: 变量中的字符串结束时有一个结束标记”\0”。标记不
参加任何运算。
注意: C 程序中所有的字符均使用英文字符。
2.4 运算符及表达式
2.4.1. 算术运算符及其表达式
+、-、*、/、%、pow(x,n)
说明:整数除整数,商为整数。例如:17/3=5,5/9=0
%为求余运算。例如:15%4=3。除数、被除数要求为整型。
求方运算,使用函数 pow(x,n),且要用头文件:math.h。
训练:假设 n 是一个正整数,表达式 n%2+(n+1)%2 的值是
什么?
说明: 数学表达式写成 C 语言表达式应注意:
写 在 一 行 上 , 不 能 再 有 肩 码 或 脚 码 。 例 如 : x2 应 写 成
x*x,y1 应写成 y1。
必要时加括号,而且只用小括号。例如:
求立方根,使用 pow(x,1.0/3)。
使用系统提供的函数。例如: ex 应写成 exp(x) 见教材
248 页。
注意在计算机计算时,1.0/3*3 和 1/3*3 都不会等于 1。
2.4.2. 自加 1、自减 1 运算
例如:n=2; n++; 等价于 n=n+1
n=2: n++; n--; ++n;--n;
r=2; m=--n; p=r++;
说明: 自加 1、自减 1 运算只适用于整型变量。
训练:若 i=2
(i++)+(i++)+(i++) 后 ,i 的值是多少(9)
若 i=2
(--i)+(--i) 后 ,i 的值是多少(2)
若 i=2
i=(i+++i+++i) 后 ,i 的值是多少(9)
若 i=2
i=(i---i) 后 ,i 的值是多少(1)
i--+--i (2)
i---i (1)
i-----i (error)
2.4.3. 关系运算符及其表达式
> >= < <= == !=
说明: 后两个关系符运算优先级低于前四个.
关系成立,其值为 1(真),否则其值为 0(假)
训练:
写出下列的关系表达式
m 大于等于 n,