第二章算符
C语言教程课件第二章 数据类型、运算符和表达式
![C语言教程课件第二章 数据类型、运算符和表达式](https://img.taocdn.com/s3/m/19446337eefdc8d376ee3266.png)
例 整型变量的定义与使用
#include <stdio.h> void main() { int a,b,c,d; /*指定a、b、c、d为整型变量*/ unsigned u; /*指定u为无符号整型变量*/ a=12;b=-24;u=10; c=a+u;d=b+u; printf("a+u=%d,b+u=%d\n",c,d); }
例 向字符变量赋以整数。 • 运行结果: #include <stdio.h> a b void main() 97 98 { char c1,c2; c1=97; c2=98; printf("%c %c\n",c1,c2); printf("%d %d\n",c1,c2); }
• 说明:在第4和第5行中,将整数97和98分别赋给c1和c2,它 的作用相当于以下两个赋值语句: c1='a';c2='b'; 因为'a'和'b'的ASCII码为97和98
• 字符型变量用来存放字符常量,注意只能放一个字符。 • 字符变量的定义形式如下:char c1,c2; • 在本函数中可以用下面语句对c1,c2赋值: c1='a';c2='b'; • 一个字符变量在内存中占一个字节; • 将一个字符常量放到一个字符变量中,是将该字符的 相应的ASCII代码放到存储单元中,这样使字符型数据 和整型数据之间可以通用。一个字符数据既可以以字 符形式输出,也可以以整数形式输出。
运行结果: total=300 例2.1 符号常量的使用 #define PRICE 30 #include <stdio.h> void main ( ) 说明:如再用赋值语句给PRICE赋值是错的 { PRICE=40;/*错误,不能给符号常量赋值*/ int num, total; num=10; total=num * PRICE; printf(″total=%d\n ″,total); } 说明: 程序中用#define命令行定义PRICE代表常量30,此后凡在 本文件中出现的PRICE都代表30,可以和常量一样进行运算
第二章+数据类型、运算符和表达式
![第二章+数据类型、运算符和表达式](https://img.taocdn.com/s3/m/6d6ff813be1e650e52ea99c4.png)
格式项的一般形式为:
%[附加格式] 格式控制符
方括号中的内容可以缺省。
附加格式控制
含义说明
l(小写字母)
m
数据最小输出宽度(一个具体正整数)
.n(一个具体 对实数,表示输出几位小数;对字 正整数) 符串,表示截取的字符个数
-(负号) 输出的数据域内向左对齐
+(正号) 要求正数和0带正号输出,负数带符 号输出
变量的定义 格式为: 类型 变量列表;
可同时定义多个同类型的变量,之间用逗 号分隔。 变量的初始化 1. 变量定义时:格式为 类型 变量名=常数; 2. 变量定义后:通过赋值语句实现
2019/7/20
变量的作用域:变量能够起作用或者 可以被使用的程序范围。由定义的位 置决定
1. 局部变量:在函数内部定义的变量, 只在其定义的某个函数或复合语句范 围内有效。
3) 例题分析:example25
2019/7/20
4. 寄存器变量:程序运行时存储在CPU寄 存器中的变量,只用于局部变量,要求 是整型和字符型变量。说明符“register”
5. 外部变量:表示该变量可以在程序中的 任何地方使用,包括定义此变量的源文 件之外,作用域为整个工程。只能用于 全局变量。说明符为“extern”。
a string”
2019/7/20
注意:“A”与‘A’完全不同,前者是字 符串,后者是字符,它们在内存中的存 贮空间并不相同。 在字符串中使用双引号必须以“\”” 表示。
实例 example22 符号常量:用标识符命名的常量,可代
替常量 在程序中直接使用。 1. 使用C语言中的一个预编译指令#define
整型常量:可以用十进制、八进制和十 六进制来表示。 a.十进制整数:[ ± ]若干各0~9的数字。 如12, 0 ,-234等
高等量子力学_第二章_算符
![高等量子力学_第二章_算符](https://img.taocdn.com/s3/m/27774fa5dd3383c4bb4cd224.png)
条件(1) :在值域中取一任意 ,证明在定义域有 存在:
1 AB AB
可见对于任意 ,确有 存在,这个 就是 B 。
条件(2) :若 A 1 A 2 ,用 C 作用在此式两边:
CA 1 CA 2
但此式就是 1 2 ,条件(2)也得到满足,因此 A1 存在。
§2-2 算符的代数运算
在量子力学中,经常出现不可对易线性算符的代数运算, 在这一小节里,我们举几个较复杂的运算例子;并且用代数方 法证明两个常用的算符等式(2.9)和(2.14)两式。
设 A 和 B 为两个线性算符,互不对易。首先我们定义多重对 易式 [ Ai , B]和[ B, Ai ] :
A A A A a A a
(2.1)
满足下列二条件的,称为反线性算符:
A A A A a A a
*
(2.2)
其中a是任意常数。在量子力学中出现的算符,绝大多数都是线 性算符,下面我们只讨论线性算符。 算符对其定义域中每一个右矢作用,都应有确定的结果。 定义一个具体的算符应当规定其定义域,并指出它对其定义域 中每一个矢量作用的结果。而确定一个具体的线性算符,只须 规定它对其定义域中的一组线性无关的右矢(例如一组基矢) 中每个右矢的作用结果即可。
A B
若两个算符 A和B 满足
[ A, B] AB BA
AB BA
则说这两个算符是可对易的,或称为两个算符对易。 定义: (2.2)
经常使用的几个对易关系:
ˆ ˆ ˆ ˆ [ F , G ] [G , F ]
ˆ ˆ ˆ ˆ ˆ ˆ ˆ [F , G M ] [F , G ] [F , M ]
第2章运算符与表达式
![第2章运算符与表达式](https://img.taocdn.com/s3/m/24f33853bf1e650e52ea551810a6f524cdbfcb55.png)
第2章运算符与表达式第2章运算符与表达式1、表达式:(int)((double)9/2)- 9%2 的值是A) 0B) 3C) 4D) 5参考答案:B【解析】先将整型数据9强制转换成double型,然后除以2得到的结果与double型保持⼀致,即为4.5,然后将4.5强制转换成整型数据4,然后计算9%2的值为1,最后计算4-1的值为3,所以选择B选项?2、sizeof( double )是A) ⼀个整型表达式B) ⼀个双精度型表达式C) ⼀个不合法的表达式D) ⼀种函数调⽤参考答案:A【解析】sizeof是C语⾔中的⼀个操作符(operator),不是函数调⽤,简单的说其作⽤就是返回⼀个对象或者类型所占的内存字节数?所以选择A?3、若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++) :(y++)中的条件表达式(x-y) 等价的是()。
A) (x-y<0||x-y>0)B) (x-y<0)C) (x-y>0)D) (x-y==0)参考答案:A【解析】条件表达式:x=表达式1?表达式2:表达式3 的含义是:先求解表达式1,若为⾮0(真),则求解表达式2,将表达式2的值赋给x。
若表达式1的值为0(假),则求解表达式3,将表达式3的值赋给x。
在本题中与表达式1:(x-y)等价的是(x-y<0||x-y>0)。
4、若变量已正确定义,在if (W) printf("%d\n" ,k );中,以下不可替代W的是()。
A) a<>b+cB) ch=getchar()C) a==b+cD) a++参考答案:A【解析】选项A)是⾮法的表达式,C语⾔中没有<>运算符。
5、以下选项中不属于C语⾔程序运算符的是A) sizeofB) <>C) ( )D) &&参考答案:B【解析】C语⾔中的不等于符号⽤"!="表⽰,没有符号"<>"?所以选择B?6、设有定义:int x=7,y=12;,则以下表达式值为3的是A) (y%=x)-(x%=5)B) y%=(x%=5)C) y%=x-x%5D) y%=(x-x%5)参考答案:A【解析】a%=b表⽰a=a%(b),故A选项可改写成y=y%x,x=x%5,再计算y-x计算的结果为3,满⾜题意,因此答案为A选项。
陈鄂生《量子力学教程》习题答案
![陈鄂生《量子力学教程》习题答案](https://img.taocdn.com/s3/m/a614db320622192e453610661ed9ad51f01d5449.png)
第二章 力学量算符2.1 证明空间反演算符ˆˆ(()())x x ψψ∏∏=-是厄米算符。
指出在什么条件下,ˆd p i dx =- 是厄米算符。
2.2 动量在径向方向的分量定义为1ˆˆˆ2r p r r ⎛⎫=⋅+⋅ ⎪⎝⎭r r p p ,求出ˆr p 在球坐标系中的表示式。
2.3 证明[][]ˆˆˆ,()();,()()ˆx x x x p f x i f x x f p i f p x p∂∂=-=∂∂ 2.4 设算符ˆA满足条件2ˆ1A =,证明ˆˆcos sin i A e i A ααα=+,其中α为实常数. 2.5 设算符ˆˆˆˆˆˆˆ,1KLM LM ML =-=,又设ϕ为ˆK 的本征矢,相应本征值为λ.求证ˆˆu L v M ϕϕ≡≡和也是ˆK 的本征矢,并求出相应的本征值.2.6 粒子作一维运动,2ˆˆ()2p H V x μ=+,定态波函数为n ,ˆ,1,2,3,n H n E n n == (1)证明ˆnm n pm a n x m =,并求出系数nm a . (2)利用(1)式推导求和公式()22222ˆn m nEE n x m m p m μ-=∑ (3)证明()222n m n EE n x m μ-=∑ 2.7 设ˆF为厄米算符,证明在能量表象中下式成立:()21ˆˆˆ,,2n m nk n E E F k F F H k ⎡⎤⎡⎤-=⎣⎦⎣⎦∑ 2.8 已知(,)lm Y θϕ是2ˆˆZL L 和的共同本征函数,本征值分别为2(1)l l m + 和。
令ˆˆˆx y L L L ±=±. (1)证明ˆ(,)lm L Y θϕ±仍是2ˆˆZ L L 和的共同本征函数,求出他们的本征值.(2)推导公式1ˆ(,)(,)lm lm L Y Y θϕθϕ±± 2.9 证明ˆˆ11ˆˆˆˆˆˆˆˆˆˆˆ,,,,,,2!3!A A e Be B A B A A B A A A B -⎡⎤⎡⎤⎡⎤⎡⎤⎡⎤⎡⎤=++++⎢⎥⎣⎦⎣⎦⎣⎦⎣⎦⎣⎦⎣⎦2.10 设算符ˆA 与ˆB 同它们的对易关系式ˆˆ,A B ⎡⎤⎣⎦都对易,证明1ˆˆˆˆˆ,,n n A B nB A B -⎡⎤⎡⎤=⎣⎦⎣⎦ 1122ˆˆˆˆˆˆ,,ˆˆˆˆˆˆA B A B A B A B A B A B e e e e e e e ⎡⎤⎡⎤-+++⎣⎦⎣⎦==或2.11 设ˆL 为轨道角动量算符。
C语言第02章 数据类型、运算符与表达式
![C语言第02章 数据类型、运算符与表达式](https://img.taocdn.com/s3/m/5e91a10f6c85ec3a87c2c5a7.png)
回到 首页
运算符和结合性 P325,附录3
2.8 算术运算符和算术表达式
3、自增、自减运算符
自增运算符++和自减运算符--均是单目运算符, 功能是使变量的值增1或减1。其优先级高于所有 双目运算符,结合性为右结合性(自右至左)。
回到 首页
例如:++i或i++ 等价于i=i+1; --i或i-- 等价于i=i-1;
2.7数值型数据之间的混合运算
回到 首页
1、整型、实型、字符型数据之间可以混合运 算
整型(包括int,short,long)和实型(包括float,double)数据可 以混合运算,另外字符型数据和整型数据可以通用,因此,整 型、实型、字符型数据之间可以混合运算。 例如,表达式10+'a'+1.5-8765.1234*'b'是合法的。
2.9赋值运算符和赋值表达式
1、赋值运算符和赋值表达式
赋值运算符:“=”为双目运算符,右结合性。 赋值表达式:由赋值运算符组成的表达式称为赋值表达 式。 赋值表达式一般形式: 变量 赋值符 表达式 如 a=5 类型转换:将高精度的数据类型赋值给低精度的数据类 型,可能出错。
回到 首页
2.9赋值运算符和赋值表达式
2.8 算术运算符和算术表达式
3、自增、自减运算符
回到 首页
y=++x;等价于先计算x=x+1(结果x=6),再执行y=x,结果y=6。 y=x++;等价于先执行y=x,再计算x=x+1,结果y=5,x=6。 y=x++*x++;结果y=25,x=7。x++为后缀形式,先取x的值进行“*” 运算,再进行两次x++。 y=++x*++x;结果y=49,x=7。
2019年二章数据类型运算符及表达式.ppt
![2019年二章数据类型运算符及表达式.ppt](https://img.taocdn.com/s3/m/427e0fc64693daef5ff73d0f.png)
若已有定义:int x; 则
从键盘输入数据给x应使用的语句为:
scanf(”%d”,&x);
。
若x的值为100,要求输出x=100的语句为:
printf(”x=%d”, x);
。
例题(sy4.c):输问入题一2个:小输数,将其保留小数位 数后两位(进行四舍入五的入数)据,怎并输出结果。 例如:输入123.674样,存则放输? 出123.67
不能包含小数点。
例如:12 -36 等等
八进制:以0开头,由0到7的数字组成,
例如:014 -042 等等
十六进制:以0x或者0X开头,
由0到9及a到f或者A到F的数字组成,
例如:0xb -0x22 等等
二、整型变量
1、整型变量的存放形式 整型数据在内存中以二进制的补码形式存放。
2、整型变量的分类
c=a*b
注意:强制类型转换运算符优先级高于算术运算符 优先级
练习:设 x=2.5, a=7,y=4.7
计算下列表达式的值
x+a%3*((xi+nty))(% x+xy/)4%(int)x/4 错正误确的表达式
=2.5+7%3*(int)(2.5+4.7)%(int)2.5/4 =2.5+1*(int)(7.2)%2/4 =2.5+1*7%2/4 =2.5+1/4 =2.5+00.25 =22..755
问题2:输 入的数据怎
样存放?
答:暂存于变量中。
实型变量如 何说明?
答:float 变量名称表
}
例如:float a,b;
二、实型变量
1、存放形式: 按指数形式存放。 一般的实型数据占用4个字节。即32位。
量子力学 第二章 算符理论
![量子力学 第二章 算符理论](https://img.taocdn.com/s3/m/62ac0dba0029bd64783e2c93.png)
第二章(一维)算符理论本章提要:本章从线性变换和微分算子出发,建立算符理论统一它们来处理「观测行为」,引入观测公设。
接着,从观测值=本征值为实数的要求出发,找到了符合条件的厄米矩阵来描述力学量,引入算符公设。
之后介绍了运算法则、基本的位置和动量算符、复合算符的对易子、哈密顿算符等。
最后,作为对上述内容的综合应用,讨论了不确定性原理。
1.算符:每一个可观测量,在态空间中被抽象成算符。
在态空间中,观测行为被抽象为,某可测量对应的算符「作用」在态矢量上①线性变换:线性代数告诉我们,一个线性变换「作用」到n 维向量上会获得一个新的n 维向量,这等价于一个n 阶方阵「作用」在n 行1列矩阵上得到新的n 行1列矩阵,用数学语言可表示为()Ta b T =⇔=αβ。
总之,方阵与线性变换一一对应。
由于方阵性质比矩阵更丰富,我们将只研究方阵。
②微分算子:在微积分中2222,,,ii x f x f dx f d dx df ∂∂∂∂ 也可简写成f f f D Df 22,,,∇∇。
前两种在解欧拉方程和高阶方程式时常用,后两种则经常出现在矢量分析中。
简写法可看作是微分算子「作用」在函数上,我们知道它遵守加法和数乘法则,是一种线性运算③本征值和本征矢:在矩阵方程x Ax λ=中,把λ称为矩阵本征值,x 称为矩阵的本征矢 ④本征值和本征函数:在微分方程f f Dmixμ=中,把μ称为问题本征值,f 称为本征函数⑤线性算符:现在把上述概念统一为线性算符理论。
考虑一个可测量Q ,定义它的对应算符为Q ˆ,它的本征方程是ψ=ψλQˆ或λψψ=Q ˆ,把λ称为算符的「本征值」,λ的取值集合称为算符的「谱」, ψ称为算符的「本征态」(或本征矢),ψ称为算符的「本征函数」 (注意:有时也把ψ记作本征值的对应本征态λ,如后面将遇到的坐标算符本征态x 、动量算符本征态p )⑥第三公设——观测公设:对于量子系统测量某个量Q ,这过程可以抽象为对应的算符Q ˆ作用于系统粒子的态矢量ψ,测量值只能为算符Q ˆ的本征值iλ。
C语言 第2章 类型、运算符与表达式(2.4~2.7)
![C语言 第2章 类型、运算符与表达式(2.4~2.7)](https://img.taocdn.com/s3/m/82a4c92fb4daa58da0114a82.png)
数据类型、运算符和表达式
主要内容
2.1 预备知识 2.2 常量和变量的概念 2.3 各种数据类型的常量及变量 2.4 变量赋初值 2.5 不同类型数据之间的混合运算 2.6 常用运算符和表达式 2.7 输入函数与输出函数
2
2.4.1 变量和内存的概念
变量: 程序运行过程中其值可以改变的量。 系统为程序中的每一个变量开辟存储单元。 变量名: 字母开头,后跟字母、数字和下划线组成。 C语言中的关键字不能作为变量名。
37
2.7.1
格式输出函数printf
printf函数一般格式: printf(格式控制,输出表列) 格式控制是由双引号括起来的字符串,包含三种信息: 1、格式说明:由“%”和格式字符组成,如%d,%f等。 它的作用是将输出的数据按照指定的格式输出。 2、普通字符:需要原样输出的字符。 3、转义字符:用于控制输出。 输出表列是一些要输出的数据。
27
2.5 数据的混合运算
1、自动转换
• 运算转换
• 赋值转换 2、强制类型转换
28
1、自动转换—运算转换
在进行运算时,不同类型的数据要先自动转换成 同一类型,然后进行运算。转换的规则按图所示。
double← float
long unsigned 转换由编译系统自动完成。 转换按数据长度增加的方向进行, 即按“向高看齐”的原则提升“ 较低”类型,以保证不降低精度。
33
2、强制类型转换
注意:对一个变量进行强制转换后,得到一个新的 类型的数据,但原来变量的类型不变。 例:x原为实型变量且值为2.6,在执行 i = (int)x 后得到一个整数 2,并把它赋给整型变量 i, 但 x 仍为实型,值为2.6。
第2章 C语言,数据类型、运算符和表达式
![第2章 C语言,数据类型、运算符和表达式](https://img.taocdn.com/s3/m/94a6c20116fc700abb68fca5.png)
(C语言运算符总表见教材P26或P325附录C) return 31
C语言程序设计
算术运算符
+ - * / % 功能: 操作数要求: 结合性: 优先级: 注意事项: 算术运算 两个操作数 (当-用作负号时除外) 自左至右(当-用作负号时除外) -(负号) —— * / % —— + - (由高→低) ① 两个整数相除,结果为整数! 例: 3/2=1 ② %要求两个操作数均为整型数据! 且余数与被除数同号!
说明: ① 字符变量中存放的是字符ASCII码值! ② char与int数据间可进行算术运算!
char choice = 'A';
return24
C语言程序设计
字符串常量
字符常量是用双引号括起来的字符序列. 例如: "hello!" , "0" (1) 字符串常量在内存中的存储 (2) 字符串常量.vs.字符常量
整型
浮点型 字符型 说明:
① 数据类型所占字节数随机器硬件不同而不同! ② 可用sizeof(数据类型说明)来计算某一数据类型占内存的字节数! return
C语言程序设计 next part
2. 常量与变量
标识符命名 常量 变量
go go go
6
C语言程序设计
标识符命名
例: 判断下列标识符号合法性
next
ห้องสมุดไป่ตู้
20
C语言程序设计
字符常量
转义字符是用反斜杠\后面跟一个字符或一个八进制或十 六进制数表示的ASCⅡ码值。例如: '\n', '\101' (1) C语言中常用的转义字符 (2) 转义字符使用实例
C语言第2章 数据类型及运算符
![C语言第2章 数据类型及运算符](https://img.taocdn.com/s3/m/a25fd9679b6648d7c1c74697.png)
C/C++程序设计第2 章数据类型及表达式计算机学院C/C++程序设计课程组C/C++程序设计第2章主要内容本章主要介绍:基本数据类型和存储类型的说明方法,以及基本运算符的运算规则和表达式的构成方法,为后续章节的学习奠定一个基础。
C/C++程序设计2.1 C 语言的数据类型使用高级语言编写程序,主要工作有两项:一是描述数据,二是描述数据加工的方法。
数据类型图 2.1C 语言的数据类型基本类型整型实型字符型带符号长整型(简称长整型)带符号整型无符号整型无符号整型无符号短整型无符号长整型单精度型双精度型空类型构造类型指针类型枚举类型数组类型结构体类型共用体类型C/C++程序设计2.2 常量常量是程序运行过程中其值不发生变化的数据。
2.2.1 整型常量表2.1 整型数据的表示方式2.2.2 实型常量3.14、.9999、-3.14159、834.、–0.666 、6.89E-52.2.3 字符常量’x’,’a’,’A’,’b’,’$’,’#’ ,printf("\tab\rcd\n\’ef\\g");2.2.4 符号常量#define 符号常量字符串#define PI 3.14159C/C++程序设计【例2.1】求一个圆柱体体积,用符号常量代替π。
#include <stdio.h>#define PI 3.14159 /*定义PI为符号常量*/void main(){float r,h,v;scanf("%f,%f",&r,&h);v=PI*r*r*h; /* PI相当于3.14159,参与运算*/printf("Volume=%f",v);}运行时输入:3,2↙运行结果为: Volume=56.548618C/C++程序设计2.2.5 字符串常量"\tab\rcd\n\’ef\\g“"I am a student" 、"x"、""注意:’\0’和’0’不同,’\0’是编码为0的字符,而’0’则是数字0,其编码为48。
陈鄂生《量子力学教程》习题答案第二章力学量算符
![陈鄂生《量子力学教程》习题答案第二章力学量算符](https://img.taocdn.com/s3/m/58f89c0f842458fb770bf78a6529647d2728343c.png)
陈鄂生《量子力学教程》习题答案第二章_力学量算符陈鄂生《量子力学教程》习题答案第二章_力学量算符含答案第一节算符理论基础1.量子力学中的基本假设包括哪些?它们各自的物理意义是什么?答:量子力学中的基本假设包括:(1) 波函数假设:用波函数Ψ(x)描述微观粒子的运动状态,波函数的模的平方表示找到粒子在空间中某一点的概率。
(2) 物理量算符假设:每个物理量都对应一个算符,而对应的测量值是算符的本征值。
(3) 波函数演化假设:波函数随时间的演化遵循薛定谔方程。
(4) 基态能量假设:系统的最低能量对应于基态,且能量是量子化的。
这些基本假设反映了量子力学的基本原理和规律。
2.什么是算符的本征值和本征函数?答:算符的本征值是指对应于某个物理量的算符的一个特征值,它代表了该物理量的一个可能的测量结果。
本征函数是对应于某个物理量的算符的一个特征函数,它表示的是该物理量的一个可能的状态。
3.什么是算符的厄米性?答:算符的厄米性是指一个算符与其共轭转置算符相等。
对于一个算符A,如果满足A†=A,则称该算符是厄米算符。
4.什么是算符的厄米共轭?答:算符的厄米共轭是指将算符的每一项的系数取复共轭得到的新算符。
对于一个算符A,它的厄米共轭算符A†可以通过将A的每一项的系数取复共轭得到。
5.什么是算符的共同本征函数?答:算符的共同本征函数是指对于两个或多个算符A和B,存在一组波函数Ψ(x)使得同时满足AΨ(x)=aΨ(x)和BΨ(x)=bΨ(x)。
其中a和b分别是A和B的本征值。
6.什么是算符的对易性?答:算符的对易性是指两个算符之间的交换顺序不改变它们的结果。
如果两个算符A和B满足[A,B]=AB-BA=0,则称它们对易。
第二节动量算符1.什么是动量算符?它的本征值和本征函数分别是什么?答:动量算符是描述粒子动量的算符,用符号p表示。
动量算符的本征值是粒子的可能动量值,本征函数则是对应于这些可能动量的波函数。
动量算符的本征函数是平面波函数,即Ψp(x)=Nexp(ipx/ħ),其中N是归一化常数,p是动量的本征值。
C语言教程第2章数据类型、运算符与表达式
![C语言教程第2章数据类型、运算符与表达式](https://img.taocdn.com/s3/m/c599048b6529647d27285291.png)
常量只能在定义时赋值,然后不能再改变 其值 常数、 const常量、宏常量和枚举常量, 都可以用来表示一个永远不会改变的数
前者不建议直接使用,而用后三者代替
C语言大学实用教程
2.5 变 量
变量是在程序执行过程中可以改变、可以赋 值的量。
在程序中每一个变量都有一个名子即变量名, 程序对该变量访问(存入、读取)都是通过变 量名进行的。
运行结果: 1234567936.000000
1234567890.000000
}
C语言大学实用教程
2.6 常用运算符及表达式
算术运算符
+,-,*,/,%
加、减、乘、除、求余运算 四则混合运算中,先算乘除,后算加减, 按从左向右的顺序计算,左结合
#include <math.h>
常用的标准数学函数
C语言大学实用教程
#include <stdio.h> /*函数功能:计算两个整数相加之和 入口参数:整型数据a和b 返回值: 整型数a和b之和 */ int Add(int a, int b) { return (a + b); }
2.1 一个简单的C程序例子
/*主函数*/ ) { int x, y, sum = 0;
022、-037 010和10大小不一样 因为八进制并不常用,所以此种表示法比较少见
以“0x”或者“0X”开始的整型常数是十六进 制
A~F和a~f用来表示十进制的10~15
十六进制的形式比较常用,尤其在进行位一级的 控制的时候 0x12、-0x1F, -0x1f
C语言大学实用教程
2.4 常量
字符常量
第2章基本数据类型及运算符原始解读
![第2章基本数据类型及运算符原始解读](https://img.taocdn.com/s3/m/45109a51852458fb770b56e6.png)
在C语言中,大小写字母有不同的含义,例如:num, Num,NUM为三个不同的标识符。 在构造标识符时,应注意做到“见名知意”,即选择 有含义的英文单词(或汉语拼音)作标识符,以增加程 序的可读性。如表示年可以用year,表示长度可用 length,表示和可以用sum等。 C语言中有一些标识符被称为关键字,在系统中具有 特殊用途,不能作为一般标识符使用,如用于整型变量 定义的int关键字,就不能再用作变量名。 有些标识符虽不是关键字,但C语言总是以固定的形 式用于专门的地方,因此,用户也不要把它们当做一般 标识符使用,以免造成混乱。这些常用的标识符有: define,include,ifdef,ifndef,endif,elif。
2. 实型(浮点型)常量
实型常量是由整数部分和小数部分组成的,它只有十 进制的两种表示形式。 (1)定点数形式。它由数字和小数点组成。整数和小 数部分可以省去一个,但不可两者都省,而且小数点不 能省。如:1.234,.123,123.,0.0等。 (2)指数形式(或称科学表示法)。它是在定点数形 式表示法后加e(或E)和数字来表示指数。指数部分可 正可负,但须为整数,且应注意字母e(或E)之前必须 有数字。如:1.234e3,12.34e2均合法地代表了 1.234×103;而e3,1e2.3,.e3,e均不合法。 另外,实型常量的后缀用F(或f)表示单精度型,而 后缀用L(或l)表示长双精度型。如:0.5e2f表示单精 度数,3.6e5L表示长双精度数。
变量
在程序运行过程中,其值可以被改变的量称为变量。变量有两个要素: 变量名。每个变量都必须有一个名字,即变量名。变量命名应遵循标识符的命名规 则。 变量值。在程序运行过程中,变量值存储在内存中;不同类型的变量,占用的内存 单元(字节)数不同。在程序中,通过变量名来引用变量的值。 【程序2-3】用来输出两个整数相加、相减和相乘的结果,代码如下。 /* 文件名:chap02_3.cpp */ #include <stdio.h> void main(){ int x,y; printf("请输入两个整数,中间用空格隔开:"); scanf("%d%d",&x,&y); printf("%d+%d=%d\n",x,y,x+y); printf("%d-%d=%d\n",x,y,x-y); printf("%d*10%d=%d\n",x,y,x*y); } 程序运行结果: 请输入两个整数,中间用空格隔开:10 5↙ 10+5=15 10-5=5 10*5=50 本程序中,x和y定义成整型变量,用于接受用户输入的值。
第二章2.7力学量随时间的演化与守恒量宇称算符
![第二章2.7力学量随时间的演化与守恒量宇称算符](https://img.taocdn.com/s3/m/e04ee380a8114431b90dd8d8.png)
证:由F为守恒量,得Fˆ , Hˆ 0,故Fˆ与Hˆ有共同
的本征态,它们的本征值方程为
Hˆ E Fˆ f
又G为守恒量,有 Gˆ , Hˆ 0,则
HˆGˆ GˆHˆ EGˆ
故与Gˆ均为Hˆ的本征值为 E的本征态
另外,Gˆ , Hˆ 0,故GˆFˆ GˆFˆ fGˆ (与Gˆ是不同的态
既然两个不同的态具有相同的能级E,可见能级E是简并的。
如,氢原子,Lˆx与Lˆz都是守恒量,但Lˆx,Lˆz 0,故
氢原子的能级是简并的。
氢原子的基态是一个例 外,Lˆx,Lˆz 0,但Lˆx LˆzY00 Lˆz LˆxY00 0
使基态能级并不简并, 因为Y00为常数,任何微分算符 作用于 Y00均为零
(1)经典力学中,d 2 dt
x
2
给出的是坐标x的加速度;在
量子力学中,由于每一时刻x一般没有确定值,d 2 dt
x
2
给出的是坐标平均值的加速度。
(2)经典力学中,位于x的粒子所受的力- U x仅
决定于该点的势场,而且受力的大小与粒子的运动 状态无关;在量子力学中,起作用的是力的平均值
F
*
x,
t
3. 宇称算符的本征值方程
用Pˆ作用于两边得 Pˆ x x x Pˆ 2 x Pˆ x 2 x
2 1,故宇称算符的本征值 为 1
由 1
Pˆ x x Pˆ - x -称 x具有偶宇称; 波函数 - x经Pˆ作用后变号,称 - x具有奇宇称。
U
x
x,
t
d
它要涉及整个势场的作用,而且与粒子所处的
状态 x, t有关。
总之,经典力学中有关 力学量之间的关系式, 在量子力学中将以平均 值和算符的形式出现。
C语言知识点:第2章 数据类型、运算符与表达式
![C语言知识点:第2章 数据类型、运算符与表达式](https://img.taocdn.com/s3/m/4e8d6d19c5da50e2524d7fe7.png)
主讲教师:杨剑
第 2 章:数据类型、运算符与表达式
1. 本章目标:
理解变量和常量的含义 熟悉基本数据类型 - int、char、float 和 double 使用算术运算符 理解类型转换 使用关系和逻辑运算符
2. 内存如何存放数据
电脑使用内存来记忆计算时所使用的数据 内存如何存储数据? 内存像旅馆.数据各式各样,要先根据数据的需求(即类型)为它申请一块合适的空
23. 复合赋值表达式
24. 赋值表达式和逗号运算符
赋值表达式 a=b=c=5;(从右向左计算) a +=a-=a*a
逗号运算符和逗号表达式 3+5,6+8 a=3*5,a*4
25. 习题
~7~
C 语言程序设计知识点
主讲教师:杨剑
有以下程序
main()
{
char a1=’M’,a2=’m’;
12. 单精度浮点型
float 在 C 语言中用于存储单精度浮点数 float 32 位 10-38 至 10+38 ,7 位有效数字 声明:
float price; 初始化:
float score = 11.3; score = 65.90;
13. 双精度浮点型
double 32 位 16 位有效数字 声明:
const float PI=3.14; S=PI*r*r; //等价于 3.14*r*r const 关键字的作用就是“冻结”一个量,它的值不能被修改,是一个只读(read only) 量。 优点:比数值常量可读性好、修改容易
18. 符号常量 2(宏常量)
还可用宏定义符号常量 语法:#define 符号名 常量值 例: 计算圆的周长时
第2章 数据类型、运算符、表达式
![第2章 数据类型、运算符、表达式](https://img.taocdn.com/s3/m/f6f379b6960590c69ec376ef.png)
第二章 数据类型、运算符、表达式一、数据类型C 语言中的数据类型比别的语言丰富。
基本类型的数据又可分为常量和变量,它们可与数据类型结合起来分类,即为整型常量、整型变量、实型(浮点型)常量、实型(浮点型)变量、字符常量、字符变量、枚举常量、枚举变量。
1、常量与符号常量常量:在程序执行过程中,其值不发生改变的量称为常量。
常量区分为不同的类型,如68、0、-12为整型常量,3.14,9.8为实型常量,‘a ’,‘b ’,‘c ’则为字符常量。
常量即为常数,一般从其字面即可判别。
符号常量:有时为了使程序更加清晰和便于修改,用一个标识符来代表常量,即给某个常量取个有意义的名字,这种常量称为符号常量。
如:#define PI 3.142、变量变量:程序执行过程中其值可以改变的量。
定义方法定义形式:数据类型 变量名1,变量名2,……变量名n ;整型(int )数据类型 基本类型 整型 单精度型(float )字符型(char )长整型(long )短整型(short )实型 双精度型(double )枚举类型(enum )共用体类型(union )构造类型结构体类型(struct )数组类型空类型(void )指针类型(*)如:char ch1, ch2; /* ch1,ch2为变量*/float x, y; /* x ,y 为实型变量*/int a, b, c; /* a,b,c 为整型变量*/在书写变量说明时,应注意以下几点:(1) 允许在一个类型说明符后,说明多个相同类型的变量。
各变量名之间用逗号间隔。
类型说明符与变量名之间至少用一个空格间隔。
(2) 最后一个变量名之后必须以“;”号结尾。
(3) 变量说明必须放在变量使用之前。
一般放在函数体的开头部分。
另外,也可在说明变量为整型的同时,给出变量的初值。
其格式为:类型说明符 变量名标识符1=初值1,变量名标识符2=初值2,...;3、数据在内存中的表示整型数据:以二进制的形式表示(1) int 类型正数: 如 123 (+123)用 16 位二进制(二个字节)表示原码 反码(原码同) 补码(原码同)最大正整数 215-1=214+213+212+211+210+29+2827+26+25+24+23+22+21+20=32767负数:如 –123原码补码(补码加 1)1取反加1 最大负整数-215=32768 因为 -215 < -(215-1) 所以用 -215 而不用 -(215-1)(2) unsigned (int) 类型称为无符号整数,它不是指不带“+ 或 -”号的整数,而是指内存表示这类数时没有符号位,16最大数215+214+213+2122+21+20=65535最小数 0 (3) long (int) 类型用 32 位二进制(四个字节)表示,其他同 int 型(4) short 类型有的计算机(小型、中型、大型机)int 即是 long ,而short 用16 位二进制(二个字节)表示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2. 算符的对易: ˆB ˆ , 则称算符 A ˆ 与B ˆB ˆA ˆ 对易; 反之为非对易。 若A 一般情况下 , 算符的乘法不对易。 ˆ, B ˆB ˆ ˆ] A ˆ B ˆA 算符的对易关系式定义 为 : [ A 例如 : [ , x ] 1 x 证明 : [ , x ] f ( x ) [ xf ( x )] x f ( x) f ( x) x x x x f ( x) x f ( x ) f ( x ),即: [ , x] 1 x x x
将动量算符的形式代入上式, 得到动能算符为: 2 2 ˆx ˆ2 ˆ p p p 1 2 2 2 y z ˆ K {( i ) ( i ) ( i ) } 2m 2m x y z
2 2 2 2 2 2 ( 2 2 2) 2m x y z 2m
ˆ 是厄米算符 . 因此 , A
定理 1:厄米算符的本征值是 实数。 ˆ 是厄米算符, g为它的本征函数, 证明:若 A ˆ g ag, ˆ g )* a * g *, 本征值为 a,即: A (A 根据厄米算符的定义, 可以得到: ˆ gd g ( A ˆ g ) * d , 即: g *A
i
j
j
i
a j i * j d ai j i *d , (注意 ai * ai ) ( a j ai ) j i *d 0, j i *d 0 因此, i 和 j 相互正交。
厄米算符属于不同本征 值的两个本征函 数一定互相正交。具有 相同本征值的本征函 数如何保证它们正交呢 ?这需要运用施米特 (Schmidt)正交化方法。 ˆ , 若存在函数 F和G满足下列 例如 , 对算符 A ˆ F aF, A ˆ G aG, 则F和G具有相同的本 关系 : A 征值 , 令 : 1 F , 2 G cF , 要求 1和 2 正交, 可以求出常数 c。
线性算符满足下列关系 ˆB ˆA ˆC ˆ B ˆ, C ˆ(A ˆB ˆA ˆ C ˆB ˆ )C ˆC ˆ) C ˆ (A ˆ 是线性算符 , 则 一般而言 , 若A ˆ a ( x) A ˆ n a ( x) A ˆ n 1 a ( x ) A ˆ a ( x) C n n 1 1 0 也是线性算符。 例如哈密顿算符:
(3)任意力学量Q的算符表达式为:
ˆ Q( x, y, z, px , p y , pz , t ) Q( x, y, z,i ,i ,i , t ) x y z
例如, 动能算符的写法: 在经典力学中, 动能可以用动量来表示: 2 2 2 p p p 1 y z Ekin m 2 x 2 2m
3. 算符的平方: ˆ2 A ˆA ˆ A ˆ 满足下列关系 4. 线性算符 : 若算符 A ˆ [c f ( x ) c f ( x )] c A ˆ f ( x) c A ˆ f ( x) A 1 1 2 2 1 1 2 2 ˆ 就是线性算符。 则算符 A 例如: [c1 f1 ( x ) c2 f 2 ( x )] c1 f1 ' ( x ) c2 f 2 ' ( x ) x 算符 就是线性算符。 x 但算符 log, 等就不是线性算符。
即:
* d F * (G cF )d F * Gd c F * Fd 0 c F * Gd / F * Fd
1 2
这样就得到两个具有本 征值的相互正交 的本征函数。即:
1 F , 2 G F F * Gd / F * Fd
2 1 2nx x (1 cos )dx l 0 2 l 1 2nx ( xdx x cos dx) l 0 l 0
l l
1 1 2 l l 2nx ( x |0 xd sin ) l 2 2n 0 l
l
l 1 2nx l l 2nx l [( x sin ) |0 sin dx] 0 2 2n l l 2
例题 : 根据 HMO理论 , 得到环丙烯基 大 键的两个能量 E 的MO为 : 1 1' ( 21 2 3 ) 6 1 3 2 1 2' ( 2 2 1 3 ) 6 1 ' 和 2 ' 是不正交 , 请根据施米特正交化方 法, 求出两个相互正交的分 子轨道。
2 2 2 2 ˆ ( H 2 2 ) V ( x, y , z ) 2 2 m x y z
就是线性算符。
5. 本征方程 、 本征值和本征函数 (eigenequa tion,eigenvalueand eigenfunct ion) ˆ 作用到函数 f ( x )上得到一个常数 如果算符 A 乘以该函数 f ( x ),即 : ˆ f ( x ) kf ( x ) A 则该方程就是本征方程 ,函数 f ( x )就是算符的 本征函数 , k是本征值。 ˆ E就是本征方程, 例如:薛定谔方程 H 波函数 是本征函数 ,能量 E是本征值。
r
p
ˆ ˆ 因此 : M x i( y z ), M y i( z x ), z y x z ˆ M z i( x y ) y x 2 2 2 2 2 M {( y z ) ( z x ) ( x y ) } z y x z y x
a g *gd aபைடு நூலகம்* g g * d , ( a a*) g g * d 0 因此, a a *,即厄米算符的本征值 是实数。
定理 2:厄米算符属于不同本 征值的两个本 征函数一定互相正交。 ˆ 是厄米算符 , , 为它的本征函数, 证明:若 A i j ˆ a ,A ˆ a ,且 a a 即: A i i i j j j i j 根据厄米算符的定义, 可以得到: ˆ d ( A ˆ ) * d , 即: *A
即: F * F ( x, y , z )dxdydz
当未归一化时 , 公式成为 : * F ( x, y , z )dxdydz F *dxdydz
例题:求一维势阱中 x的平均值。 x
0 l l
2 nx 2 nx sin( )x sin( )dx l l l l
6. 厄米 (Hermite) 算符 ˆ 满足下列关系 定义 : 若算符 A
ˆ gd g ( A ˆ f ) * d 即 : f *A
ˆ | g g | A ˆ | f * 则算符 A ˆ 为厄米算符。 f |A 上述定义与下面的定义 等同: ˆ fd f ( A ˆ f ) * d f *A
第二章
算符及力学量的算符表示
一、 算符 二、力学量的算符表示 三、力学量的平均值
一、算符(Operators)
算符:算符是把一个函 数变成另一个函数 的数学运算符号。 ˆ f ( x ) ˆ 如微分算符 D , Df ( x ) 。 x x ˆ x,x ˆf ( x ) xf ( x )。 位置算符 x 1. 算符的加法和乘法 ˆ A ˆ B ˆA ˆB ˆ , C ˆ 如果 C ˆ A ˆB ˆA ˆB ˆ , ˆ 如果 C C
二、力学量的算符表示
在量子力学中每个力学量对应一个线性厄米算 符, 力学量算符的表达式如何写出呢? (1)时空算符就是它们自己:
ˆt ˆ x, y ˆ y, z ˆ z, t x
(2)动量算符定义为:
ˆ x i p ˆ ˆ , p y i , pz i x y z
对一般平均值有:
N N 其中 n j 是力学量取 F j的次数, N是测量 的总次数 , p j 是测量力学量时得到 F j的 几率。
F F F
i 1 i
N
j
n j Fj
j p j Fj
因此根据波函数的意义 ,可以 得到求平均值的公式: F *F ( x, y , z )dxdydz ,
ˆ x i 是厄米算符。 练习:证明 p x
ˆ 例题:证明 A i 是厄米算符。 x 证明 : 对于波函数 , 则有 ˆ dx *i dx *id * A x * i | id * 0 i * dx x ( i ) * dx (i ) * dx x x ˆ ) * dx,即 * A ˆ dx ( A ˆ ) * dx (A
势能是空间坐标的函数, 即: V = V(x,y,z) 。因 ˆ ( x, y, z) V ( x, y, z) 此, 势能算符与它原来完全一样: V
角动量算符的写法:
M rp x i j y
k z
M
px p y pz ( ypz zp y )i ( zp x xpz ) j ( xp y ypz )k 2 2 2 Mx M y Mz, M M M Mx My M z2
1 解:令 1 1 ' ( 21 2 3 ) 6 1 2 c 1 ' 2 ' [(2c 1)1 (2 c ) 2 ( c 1) 3 ] 6 根据施米特正交化方法 , 得到 : c 1 ' 2 ' d (注意 1 ' 为实函数 , 且是归一的 ) 1 c ( 21 2 3 )(2 2 1 3 )d 1 / 2 6 因此两个相互正交且归 一化的分子轨道 1和 2分别为 : 1 1 1 ( 21 2 3 ), 2 ( 2 3 ) 6 2