任务9 指针的使用

合集下载

G9鼠标功能分析

G9鼠标功能分析

Logitech G
备注Logitech只提供了google//AOL/Yahoo四种网络搜索子菜单下有移动速度的调设自定义任务功能键
宏管理编缉,方便游戏中更好进完成任务完求
自定义需要启动使用的程序
用程序
常有用。

(需要SetPoint软件)影
int软件)
图像。

Ctrl+滚轮前滚
图像。

Ctrl+滚轮后滚
停止前,将一直滚动。

(需要SetPoint软
好的搜索实用程序。

(需要SetPoint软件只需停止鼠标即可。

(需要SetPoint软件。

一下即可执行多步聚任务。

标准设备命令
软件)
SetPoint软件)需鼠标设备支持)
需鼠标设备支持)
低音量
高音量
轨(多媒体)量恢复到原来大小
int软件)
用程序都给每个按键指定了功能
能指定给其它键
能指定给其它键。

并非所有的应用程序都向该键指定了功。

并非所有的应用程序都向该键指定了功。

并非所有的应用程序都向该键指定了功
需要SetPoint软件)
轨(多媒体)
ech G9
态能。

2012 fll任务规则

2012 fll任务规则

机器人竞赛任务任务1:清除污染源-大部分的污染源都会使水受到污染。

任何一种植物和动物都需要水。

我们的食物有许多是加工自植物和动物,环境污染是食品被污染的重大源头,不仅仅只是影响我们呼吸的大气和饮用的水,还有我们的食品……黄色和蓝色的球代表农田里的农药,杀虫剂以及水中的重金属成分。

它们一开始放在环上,让它们离开环,并接触场地就认为清除了污染源。

分数情况:球接触场地,每个4分。

任务2:收割谷物——收割机是其中一种能一次性处理大量耕作任务的大型机器。

像这样靠燃料来运行的设备还有很多,但是你有可能会在谷物中发现机器上的零件,例如:液压油,螺丝,螺帽,盖板,垫圈,固定螺丝,轴承,密封剂,油漆碎片……。

所以必须要经过处理才可以食用。

得分情况:(以下得分情况只能获得其中一种)——至少一颗谷物接触场地得5分(超过一颗还是5分)。

或者——至少一颗谷物在基地里得9分(超过一颗还是9分,不会再获得前者的5分)。

任务3:可持续发展捕鱼——如果一次性将所有鱼都抓走,那么以后就永远都捕不到鱼了。

所以在捕鱼的时候需要保护小鱼苗。

但是在捕鱼之后,鱼必须要被马上吃掉或者被立刻冷冻起来。

如果不及时处理,大量的细菌就会在鱼的体内快速的生长起来了!得分情况——基地里的每条大鱼得3分(但小鱼苗必须接触标示区-任何部分在标示区内都可以,小鱼苗不接触自己的标示区则此项无分)。

标示区的示意图:加图说明标示区是哪里任务4:披萨和冰激凌——当你在外面吃东西时,你是否考虑过食品是否卫生?制作的人是否洗干净了手,或者带了干净的手套?朝哪个方向打喷嚏?储存和制作食品的地方是否干净?食品是在什么温度下保存和制作的?制作原材料存放多久了?所以需要送回基地检查。

得分情况:每个在基地的披萨和冰激凌获得7分。

任务5:农场新鲜的产品——总的来说,你的食品越新鲜,里面的有害物质就越少,受到的食品污染也就越少。

靠近你住处的小农场和渔场,会是你良好的新鲜食品的来源,但是许多小农场不像大的农场那样接受同样级别的卫生检测。

Fireworks9路径调版的使用

Fireworks9路径调版的使用

Fireworks9路径调版的使用Fireworks是一款结合了矢量图和点位图的图像编辑软件,因此无论你使用矩形工具还是铅笔或者钢笔工具绘制出的图形,都是基于路径的形状。

Fireworks 9 路径调版怎样使用呢?下面店铺给大家整理了更多关于Fireworks 9 路径调版使用的方法,希望大家喜欢。

Fireworks 9 路径调版使用的方法步骤:虽然Fireworks的矢量功能不如Illustrator,图像处理的能力比不上Photoshop,但是对于大多数使用Fireworks的设计师而言,Fireworks的最大优势就是方便、快捷,无论是对于路径的编辑和图像的处理,Fireworks都可以轻松快速地完成任务。

在Fireworks中,对路径的编辑主要集中在【修改】菜单中,包括【组合路径】和【改变路径】两个子菜单,对路径的运算和编辑都可以在这里完成,如图1.1所示。

在Fireworks 9中,新增了一个路径调版,它把【组合路径】和【改变路径】两个子菜单中所有的功能都集中在一个面板上,便于使用者进行编辑,同时,在这个面板中,还提供了一些新的路径编辑功能。

如图1.2所示。

扩展:Fireworks中调整路径锚点锚点就像是路径对象的骨节。

用任何一种矢量绘图工具绘制的路径对象都是由绘图时所设置的锚点位置决定的。

锚点可分为“曲点”和“角点”两种类型,锚点的类型与其相邻线段的形状密切相关。

注意:曲点是一个小圆形表示的锚点,它表示该点两侧的线段是弯曲的,并且两侧的线段在该点处平滑过渡。

角点是一个小正方形表示的锚点,它表示该点两侧中至少有一侧的线段是直线,在该点处两侧的线段不能平滑过渡,如下图所示。

调整锚点,可执行如下操作:(1)选取锚点:使用工具箱中的“部分选定”工具,单击锚点,可以选取一个锚点,选中的锚点变为实心锚点,如下图所示。

注意:按住Shift键连续单击多个锚点,可以选择多个锚点。

(2)移动锚点:使用“部分选定”工具,选取某个锚点,然后拖动鼠标,即可移动路径上的锚点。

罗盘游戏总结

罗盘游戏总结

罗盘游戏总结引言罗盘游戏是一种基于方位和导航的团队合作游戏。

在这个游戏中,参与者要使用一个罗盘来找到隐藏在指定地点的物体。

本文将总结罗盘游戏的规则、玩法以及一些游戏策略。

游戏规则1.参与者被分为若干小组,每个小组由2-4人组成。

2.每个小组被分配一个开始位置,并给予一支罗盘和任务卡。

3.任务卡上标有指南针上的方位(如北、南、东、西等)。

参与者根据任务卡上的方位,使用罗盘来确定前进的方向。

4.小组需要依靠罗盘的指示前往特定地点,以找到隐藏的物品。

5.当小组到达任务卡指定的方位时,他们需要寻找隐藏的物品。

物品可能被藏在草地上、树木中或其他对象的后面。

6.第一个找到物品的小组将获得奖励分数。

罗盘的使用技巧1.了解基本指示:罗盘上通常有基本指示,如N(北)、E(东)、S(南)、W(西),参与者应该熟悉这些基本指示的含义。

2.熟悉度量单位:在某些罗盘上,指示可能以度数表示,参与者需要理解度数的含义,如360度即代表一个完整圆周。

3.正确校正:罗盘需要在使用前进行校正,以确保其准确性。

校正的方法包括将罗盘放置在水平的表面上,并将指针与刻度线对齐。

4.注意磁干扰:罗盘的准确度可能会受到附近磁性物质的影响。

因此,在使用罗盘时,要注意远离可能会干扰的磁性物体,如手机、电视等。

游戏策略1.团队合作:罗盘游戏强调团队的合作和协作能力。

参与者应该相互配合,共同决策前进的方向。

2.沟通有效:沟通是成功完成任务的关键。

参与者应该清晰地传达罗盘的指示,以便整个团队能够理解和执行。

3.细心观察:在寻找隐藏的物品时,细心观察周围环境非常重要。

小组成员应该密切关注任务卡上指定的方位,同时留意可能隐藏物品的迹象。

4.制定计划:在开始游戏前,小组应该制定一个合理的计划,确定每个人的角色和任务,以便高效地前往指定地点。

5.快速决策:有时候,罗盘指示并不总是准确的。

在这种情况下,参与者需要快速做出决策,并调整前进的方向。

结论罗盘游戏是一种有趣的团队合作游戏,通过罗盘的指示,参与者需要找到隐藏的物品。

project_2007图文教程(中)

project_2007图文教程(中)

前,应尽可能多地确定这些具体任务。

此方法适用于从具体到一般的规划。

为大多数复杂项目创建准确的任务和阶段需要组合使用自上而下规划和自下而上规划。

通常,项目经理从项目已确定的主要阶段入手(自上而下),而执行项目的资源则提供完成每个阶段工作的具体任务(自下而上)。

在下面的练习中,将通过缩进任务来创建两个摘要任务。

(1) 选择任务2到任务6,如图2.6所示。

图2.6 选择任务2到任务6(2) 在“项目”菜单中,指向“大纲”,然后单击“降级”。

提示也可在“格式”工具栏中单击“降级”。

任务1变为摘要任务。

甘特图中显示一个摘要任务条,并且摘要任务名称格式化为粗体,如图2.7所示。

(3) 下一步,选择任务8到任务10的名称。

(4) 在“项目”菜单中,指向“大纲”,然后单击“降级”。

任务7变为摘要任务,并且甘特图中显示另一个摘要任务条,如图2.8所示。

提示如果您的组织在项目规划阶段使用工作分解结构(Work Breakdown Structure,WBS)过程,您可能会发现在Project中查看WBS代码是有好处的。

如需了解在Project中使用WBS代码的信息,在“键入需要帮助的问题”框中输入Create WBS codes。

摘要任务甘特图中的摘要任务条形图子任务图2.7 任务1变成摘要任务图2.8 任务7变成摘要任务2.5 链接任务Project要求任务以特定顺序执行。

例如,拍摄电影场景的任务必须在编辑电影场景的任务执行之前完成。

这两个任务之间存在完成-开始关系(也称为链接或依赖关系)。

此种关系有两类:⏹第2个任务的执行必须晚于第1个任务,称为序列;⏹第2个任务只能在完成第1个任务后执行,称为依赖。

在Project中,第1个任务(拍摄电影场景)称为前置任务,因为它在依赖于它的任务之前。

第2个任务称为后续任务,因为它在它所依赖的任务之后。

同样,任何任务都可以成为一个或多个前置任务的后续任务。

尽管听起来有点复杂,但是任务间的关系可以总结为如表2.3所示的4种关系之一。

初二秒表读数练习题

初二秒表读数练习题

初二秒表读数练习题1. 计时器开始计时后,经过5秒钟,秒表的指针指向哪个刻度?答案:秒表指针应该指向"5"的刻度。

2. 如果秒表的指针指向了90刻度,经过了多少秒钟?答案:经过了90秒钟。

3. 使用秒表计时10秒钟,指针指向了20刻度,这是否正确?答案:不正确。

10秒钟应该对应指针指向"10"的刻度。

4. 凌晨12点,你开始使用秒表计时,经过了3600秒,指针指向了多少刻度?答案:经过了3600秒,指针应该指向"60"的刻度。

5. 花费了8分钟56秒完成一段任务,秒表指针应该指向哪个刻度?答案:8分钟56秒等于536秒,秒表指针应该指向"36"的刻度。

6. 你开始使用秒表计时,经过了1小时25分钟,指针指向了多少刻度?答案:1小时25分钟等于85分钟,也就是5100秒。

指针应该指向"0"的刻度。

7. 使用秒表计时25秒钟,指针指向了30刻度,这是否正确?答案:不正确。

25秒钟应该对应指针指向"25"的刻度。

8. 如果秒表的指针指向了120刻度,经过了多少秒钟?答案:经过了120秒钟。

9. 使用秒表计时15小时,指针指向了多少刻度?答案:15小时等于900分钟,也就是54000秒。

指针应该指向"0"的刻度。

10. 使用秒表计时90秒钟,指针指向了140刻度,这是否正确?答案:不正确。

90秒钟应该对应指针指向"90"的刻度。

总结:通过以上练习题,我们可以进一步巩固和熟悉秒表的读数方法。

在使用秒表计时时,我们需要注意刻度的对应关系,确保准确读取时间。

通过反复练习,我们可以提高秒表读数的准确性和速度,为时间的测量提供准确的参考。

Adobe Reader 9使用手册

Adobe Reader 9使用手册

使用Adobe Reader 的功能Adobe® Reader® 是用于打开和使用在 Adobe Acrobat® 中创建的 Adobe PDF 的工具。

虽然无法在 Reader 中创建 PDF,但是可以使用 Reader 查看、打印和管理 PDF。

在 Reader 中打开 PDF 后,可以使用多种工具快速查找信息。

如果您收到一个 PDF 表单,则可以在线填写并以电子方式提交。

如果收到审阅 PDF 的邀请,则可使用注释和标记工具为其添加批注。

使用 Reader 的多媒体工具可以播放PDF 中的视频和音乐。

如果 PDF 包含敏感信息,则可利用数字身份证对文档进行签名或验证。

了解如何使用 Reader 处理日常 PDF 任务:使用 Adobe Reader 可以方便地与他人协作并简化您的工作:查看和搜索 PDF在 Reader 工具栏中,使用缩放工具和“放大率”菜单可以放大或缩小页面。

使用“视图”菜单上的选项可以更改页面显示方式。

“工具”菜单上的有更多选项,可以更多方式调整页面以获取更好的显示效果(“工具”>“选择和缩放”)。

默认打开的 Adobe Reader 工具栏:A.文件工具栏B.“页面导览”工具栏C.“选择和缩放”工具栏D.“页面显示”工具栏E.“查找”工具栏有关详细信息,请参阅“Acrobat 帮助”中的查看 PDF 页面。

在 PDF 中查找信息使用“搜索”窗口(“编辑”>“搜索”)或“查找”工具栏可以搜索页面内容,包括层、表单域、批注、书签和数字签名。

查看和搜索 PDF 包PDF 包是一个文件集合,常包含非 PDF 格式的文件,如 Microsoft Office 文档。

您可以使用 Reader 搜索工具在整个 PDF 包中查找文本。

在“PDF 包”工具栏中的“搜索”框中键入要查找的文本。

搜索结果显示发现文本的所有文件。

∙PDF 文件中,展开列表可在上下文中查看结果。

任务 9 处理黑客入侵事件

任务 9 处理黑客入侵事件
上页
返回
工作任务
下页
条件准备
DameWare 迷你中文版 4.5 是一款远程控制软件, 只要拥有一个远程主机的账号和密码,就可以对该主机 实施远程监控,监视远程主机的所有操作甚至达到控制 远程主机的目的。 另外张老师选择了两台操作系统为 Windows XP Professional 的主机,其中一台作为实施攻击的主机 (以下称“主机A”),另一台作为被攻击的主机(以下 称“主机B”),并将两台主机接入局域网中。
1 2 3 4 5
返回 学习目标 上页
下页
工作任务
1. 工作名称
2. 工作任务背景 3. 工作任务分析 4. 条件准备
返回 工作任务
上页
下页
任务名称与背景
任务名称:模拟校园网内主机被黑客入侵攻击 任务背景:最近多位老师发现自己计算机中的内容突 然丢失或被篡改,有的计算机还出现莫名其妙的重新 启动现象。张老师接到报告后,迅速感到现场查看, 发现这几台计算机的硬盘均被不同程度的共享了;有 的计算机中被植入了木马;有的计算机中正在运行的 进程和服务被突然停止;更有甚者,有的计算机的鼠 标指针竟然会自行移动,并执行了某些操作。而查看 这些计算机的日志却没有任何发现。
上页
返回
工作任务
下页
任务分析
张老师将计算机被黑客攻击的结论告诉了这几位 老师,他们觉得不可思议。他们提出了很多问题:难 道我们的身边真的存在校园黑客?黑客究竟使用什么 样的方法控制了我们的计算机?今后我们应该如何防 范黑客的攻击? 张老师为了增强老师们的网络安全防范意识,决 定利用一些网上下载的黑客攻击软件为老师们模拟操 作校园网计算机被攻击的过程,并在操作过程中指出 老师应该如何应对和防范黑客的攻击。 黑客攻击的手段和方法很多,张老师认真分析了 本次发生的校园网黑客入侵事件,推理出本次黑客攻 击的过程:首先黑客获得目标主机的用户名和密码,
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VC++
任 务 9
三、确定指针变量的指向 指针变量定义后,必须确定指针变量的指向。 例如: int a=3,*p=&a; 如果int a,*p=&a; 1、给指针变量赋值 给指针变量赋值; printf("%d,%d",a,*p); 2、给指针变量初始化 给指针变量初始化; 则*&a==*(&a)==*p==a, 例如:int a,b[5],*p,*q,*r,*s; float *t; 3、给指针变量赋空值 给指针变量赋空值。 给指针变量赋空值 &*p==&(*p)==&a==p。 输出结果为:3,3 例如: int p=&a;/*确定p指向变量a */ 四、指针运算符 a,*p=&a; √ 例如:int *p; 相当于:int *p与a 等价 t=&a;*指针变量 /*t的基类型与a不同*/ 一般形式: 说明a,*p; p=&a; 一般形式 即*&a==a,&*p==p。 × int *p=&a,a; × p=NULL;(或p=0;) 其中*为指针运算符,优先级别和结合方向与&相同。 q=b; /*确定q指向数组b,相当于q=&b[0]*/ int a[3],*p=a,*q=&a[2]; √ 作用:求指针变量所指向的变量的值,即指针变量 作用 其中NULL是一个符号常量,代表整数0, r=a; /*把a的值赋给r*/ × 所指向的内存单元的内容。 相当于:int a[3],*p,*q;p=a; q=&a[2]; 在stdio.h中定义。 r=p; /*确定r指向p指向的变量a*/ 说明 此时,p是一个空指针,不指向任何单元。 int a,*p,*q=p; × s=1000; /*把1000赋给s*/ × 1)如果int a,*p=&a; 则*p与a等价,即*p也是一个变 int a,*p=&a;float *q=p; × 注:不能将一个非零数值赋给指针变量。 s=&b[2]; /*确定s指向数组元素b[2]*/ 量,就是p所指向的变量; 2)*与&互为逆运算; t=s; /*t与s的基类型不同*/ × 3)运算符“*”后面必须是指针变量,而不能是普通 4 变量。
VC++
任 务 9
例9 求二维数组中全部元素之和。 例7 有10个整数,输出其中的最大数和最小数。 任务9-2 通过指针给变量赋值。 任务 例5指针作为函数参数 例8 求一维数组中下标为奇数的元素之和。 例6 #include "stdio.h" 变量的地址作为实参,指针 #include "stdio.h" 指针作为函数参数同数组名作为函数参数相同, #include "stdio.h" #include "stdio.h" #define M 3 变量作为形参。 #define N 10 都是地址传递。将变量的地址传给形参要求形参必 void main() void main() #define N 4 #include "stdio.h" void main() 须是指针变量,达到形参与实参变量共用存储单元 {int max_min(int*p,int n) ;*q1,int *q2,int n); {void odd_add(int{void sub(int arr[],int void main() void p(int x,int *y) *px,int *py); 的目的,从而实现通过被调函数来改变主调函数中 {int z; {intstatic int a[10]={1,2,3,4,5,6,7,8,9,10},total; intarr_add(int arr[],int n); array[N]={1,8,10,2,-5,0,7,15,4,-5},*p1,*p2,a,b; 变量的值,使一次函数调用返回“多个值”。 inttotal=odd_add(a,10); p1=&a;p2=&b; int x,y; a[M][N]={1,3,5,7,9,11,13,15,17,19,21,23},*p,total; z=x+*y;x=x+z;*y=*y+z; sub(&x,&y); printf("total=%d\n",total); p=a[0]; max_min(array,p1,p2,N); 1、变量的地址作为实参,指针变量作为形参 、变量的地址作为实参, printf("%2d,%2d,%2d",x,*y,z); total=arr_add(p,M*N); printf(" max=%d,min=%d\n",a,b); 例5}通过指针给变量赋值。 printf(" %d,%d\n",x,y); } } 变量的地址作为实参,指针变量作为形参。 printf("total=%d\n",total); 例6int odd_add(intmain() n) void *p,int } void max_min(int arr[],int *q1,int *q2,int n) } 2、形参和实参都是指向同一类型的指针变量 、 arr_add(int arr[],int sub(int *px,int *py) {int x=1,y=2,z=3; void int{int *q=p,sum=0; n) {int i;*q1=*q2=arr[0]; 例7 for(p++;p<q+n;p=p+2) {int 有10个整数,要求输出其中的最大数和最小数。 for(i=0;i<n;i++) {*px=10;*py=20;} i,sum=0; p(x,&y); printf("%2d,%2d,%2d\n",x,y,z); 3、实参是数组名,形参是指针变量 sum=sum+*p; 、实参是数组名, *q1=arr[i]; for(i=0;i<n;i++) {if(arr[i]>*q1) p(y,&z); sum=sum+arr[i];*q2=arr[i]; if(arr[i]<*q2) 例8 return(sum); 求一维数组中下标为奇数的元素之和。 return(sum); printf("%2d,%2d,%2d\n",x,y,z); 4、} } 实参是指针变量, 、实参是指针变量,形参是数组名 } } } 例9 求二维数组中全部元素之和。 7
结 构 化 程 序 设 计
讲授:李学刚 常州信息职业技术学院
任 务 9
教 学 目 标
1、掌握指针变量的定义,能正确引用指针变量, 、掌握指针变量的定义,能正确引用指针变量, 确定指针变量的指向; 确定指针变量的指向; 2、掌握&和*运算符的使用及指针运算; 、掌握 和 运算符的使用及指针运算 运算符的使用及指针运算; 3、掌握指针作为函数参数的几种形式,能利用指 、掌握指针作为函数参数的几种形式, 针编写函数解决实际问题; 针编写函数解决实际问题; 4、掌握使用指针处理数组及字符串的方法; 、掌握使用指针处理数组及字符串的方法; 5、了解返回指针值的函数和main()函数的参数。 、了解返回指针值的函数和 函数的参数。 函数的参数
一个抽
VC++
任 务 9
3、指针变量 、 ①指针变量:把存放地址的变量称为指针变量。指针 指针变量 例如:int 变量的值为地址即指针。*p; 指向:如果指针变量p中存放的是变量a的地址,即 ②指向 p为指针变量,它的基类型为int 指针变量p的值为变量a的地址,则称变量p指向变量a。 二、指针变量的定义 1、一般形式 [存储类别] 数据类型 *指针变量名; 2、说明 ①存储类别规定了指针变量的存储类别; ②数据类型规定了指针变量所能指向的变量的类型, 称为指针变量的基类型; ③*表示后面的变量是指针变量,这是与普通变量定 义的区别。 3
p,*q, a=3; 例如:int 1、一级指针 、 例如:int **p,*q, a=3; q=&a; 非指针变量即普通变量的地址称为一级指针,存 内存中的情况用图示 放普通变量的地址的指针变量称为一级指针变量。 表示如下: q=&a; √ p=&q; 2、二级指针 、 &qp=&a; &a × 3 printf("%d,%d,%d",**p,*q,a); 存放一级指针变量的地址的指针变量称为二级指 p p=&q; 针变量,即指向指针的指针。 q √ a 输出结果为:3,3,3 3、二级指针定义的一般形式 、 说明**p,*q,a三者等价。 **p,*q,a [存储类别] 数据类型 **指针变量名; 4、说明 内存中的情况如下: 、 ①通常应该把一级指针的地址赋给二级指针,而不应 把普通变量的地址赋给二级指针; ②引用二级指针变量的值要用两个*; ③定义二级指针变量也可以象int *(*p);这样来定义, 即定义中的*也可以看成是运算符; 6 ④同样,可以定义多级指针。
VC++
任 务 9
五、指针变量的引用 例3 交换两个指针变量所指向的变量的值。 例如:int a[5]={1,3,5,7,9},*p; 例2 交换两个指针变量的指向。 例1 两个指针变量指向同一变量。 1、引用指针变量指向的变量 引用指针变量指向的变量; 引用指针变量指向的变量 程序: 程序: 例如:int a[7]={1,3,5,7,9,11,13},*p; p=&a[2]; 程序: 2、直接引用指针变量 " 直接引用指针变量。 直接引用指针变量 "stdio.h " #include #include "stdio.h " "stdio.h #include printf(“%2d”,*p); p=&a[2]; 例1 两个指针变量指向同一变量。 void main() main() void main() 例4 指针变量作为循环变量向数组输入数据。 void printf(“%2d”,*(p+1)); {int *p1,*p2,a,a1=10,a2=20; 例2 交换两个指针变量的指向。 printf("%3d",*(p++)); {int *p1,*p2,*p,a1=10,a2=20; {int *p1,*p2,a1,a2; int a[5],*p; p1=&a1;p2=&a2; printf(“%2d”,*(p-2)); p1=&a1;p2=&a2; 例3 交换两个指针变量所指向的变量的值。 例如: char a[]="ABC",*p=a; 例如: int a=3,*p=&a; scanf("%d,%d",&a1,&a2); 例如:int a=3,b=2,*p; printf("%3d",*p++); printf("%d,%d\n",*p1,*p2); printf(“%2d”,*p-1); for(p=a;p<a+5;p++) 六、指针运算 printf("%d,%d\n",*p1,*p2); p1=&a1;p2=&a2; p=&a; printf("%s",p); a=*p1;*p1=*p2;*p2=a; printf("%u",p); printf("%3d",(*p)++); p=p1;p1=p2;p2=p; 1、对指向单元的相邻单元操作,指针不移动; printf("%d,%d\n",*p1,*p2); p-2 scanf("%d",p); 1 1000 a=a+b; printf("%d,%d\n",*p1,*p2); a[0] -整型常量 printf("%d,%d\n",*p1,*p2); 一般形式:指针变量+输出结果为:ABC 整型常量 指针变量 p2=p1;输出为变量a的地址 printf("%3d",*(++p)); p-1 printf("%d,%d\n",a,*p); printf("%d,%d\n",a1,a2); 3 printf("%d,%d\n",a1,a2); 2、移动指针(指针自增或自减) a[1] 1002 printf("%d,%d\n",*p1,*p2); } } printf("%3d",*++p);指针变量-一般形式:后缀形式:指针变量++ a[2] } p 输出结果为:5,5 5 1004 输出结果:10,20 10,20 a[3]指针变量 输出结果: p+1 前缀形式: ++指针变量 -运行情况:10,20↙ printf("%3d\n", ++*p); 7 1006 20,10 20,10 注:加向后移动,减向前移动。后缀形式:“先引用, 10,20 a[4] p+2 9 1008 10,10 20,10 10,20 输出结果为:5 7 9 11 13 14 后移动”;前缀形式:“先移动,后引用”。 例4 指针变量作为循环变量向数组输入数据。 5
相关文档
最新文档