实验项目四
《C语言程序设计》实验四

电子科技大学计算机学院标准实验报告(实验)课程名称C语言程序设计电子科技大学教务处制表电子科技大学实验报告四学生姓名:学号:指导教师:王瑞锦实验地点:实验日期:年月日一、实验室名称:软件实验室二、实验项目名称:函数的应用及预处理三、实验学时:2四、实验原理:使用Turbo C软件(简称TC),在微型计算机上,对其程序进行编辑、编译、连接与运行。
Turbo C是一个集成环境,它具有方便、直观、易用的界面和丰富的库函数。
通过上机练习掌握在TC环境下编辑、编译、连接、和运行C程序的方法和过程。
五、实验目的1.掌握C语言中定义函数的方法;2.掌握函数传值调用的方法;3.掌握函数传址调用的方法;4.掌握递归函数的设计方法;5.掌握命令行参数的使用方法;6.掌握函数在不同文件中的编译、链接方法。
六、实验内容编程实验,完成以下上机内容,调试运行程序并完成报告1)、教材第七章习题7.4;2)、编写一个实现冒泡法排序的函数,并在主函数中从键盘上输入6个数后进行排序输出;3)、教材第七章习题7.11;4)、教材第七章习题7.15;5)、教材第七章习题7.24;6)、求解汉渃塔(tower of Hanoi)问题。
在一块平板上立有3根立柱,从左到右分别标记为A,B,C。
最初在A柱上放有6个大小不等的圆盘,并且大盘在下面,小盘在上面。
要求将这些盘从A移到C(可以借助B柱)。
条件是:每次只能移动一个盘,并且不允许把大盘放在小盘的上面。
(提示:利用函数的递归调用);七、实验器材(设备、元器件):pc硬件要求:CPU PII 以上,64M 内存,1OOM 硬盘空间即可。
软件要求:DOS3.0以上/Windows98/Me/XP/NT/2000。
八、实验步骤:实验编程与运行结果⑴编写一个求两个整数的最小公倍数的函数,两个整数由键盘输入,用主函数调用这个函数,并输出结果。
程序文件名为7_4.c,源程序清单如下:#include<stdio.h>lcd(int a,int b){int temp,num1,num2;num1=a;num2=b;while(num2!=0){temp=num1%num2;num1=num2;num2=temp;}return(a*b/num1);}main(){int t,x,y;printf("Please input two integers:");scanf("%d,%d",&x,&y);if(x>y){t=x;x=y;y=t;}printf("lcd(%d,%d)=%d\n",x,y,lcd(x,y));}运行结果:⑵编写一个实现冒泡法排序的函数,并在主函数中从键盘上输入6个数后进行排序输出。
普通动物学实验实验

《普通动物学实验》实验课程名称:动物学实验课程编号:实验学时:60 实验学分:一、本实验课的性质、任务与目的动物学实验是生物科学专业本科生的专业必修课,是研究动物的形态结构、功能以及分类的一门实验科学,是高等师范院校生物系的一门专业基础课。
通过实验课教学验证、加深理解和巩固理论知识,熟悉动物学的基本操作技术,提高动手能力及观察分析问题的能力,培养科学的、严谨的实事求是的学风。
通过本课程的教学,使学生具有独立从事动物学教学的能力,掌握科学研究的初步方法。
二、本实验课的基本理论普通动物学实验是研究动物的形态结构、功能以及分类的一门实验科学,是高等师范院校生物系的一门专业基础课。
基本理论是形态、结构和功能相统一的原则理解和掌握动物是如何适应环境而发生进化和变异,从而使生命从低级向高级、水生到陆生、简单到复杂的发展和变化。
三、实验方式与基本要求采用理论讲解和具体实践相结合的原则,让学生进行动手实践,更深地理解和掌握动物学的理论和知识要点,要求学生能根据理论学习自觉地掌握动物的基本形态、结构和功能。
采用标本识别、实物观察、外形观察和内部解剖、装片观察和标本制作等方式使学生的知识点掌握的牢固和透彻。
1.基本实验操作和仪器的使用学生应能熟练使用光学显微镜、解剖镜等仪器,学会常用药品的配制及常见动物的采集、制作方法。
通过各纲代表动物的解剖、观察和分类掌握各类动物的解剖和分类方法。
2.实验报告普通动物学实验的实验报告主要包括绘图和观察结果描述,通过完成实验报告,培养学生正确观察、表达的、分析的能力。
绘图是一项很重要的工作,每个学生应认真对待。
绘制科学的图因以精确为主,因此要求学生首先要认真观察标本,然后按要求绘图。
除绘图外,实验报告还包括解答实验指导中提出的问题和必要的记录等,并应把它写在笔记本上。
实验报告是记录个人在实验中观察到的内容和对观察的解释,不可照抄实验指导和教材中的内容。
3.教学时数分配根据高等师范院校教学改革的需要,结合我系的实际情况,本大纲安排有20个实验,每个实验基本为3学时,共约66学时,机动6学时;野外实习15天。
小学科学实验操作项目及技能要求4年级

实验结论:水与空气都可流动,形状都能改变,水不能被压缩,空气可以被压缩。
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,通力根1保过据护管生高线产中敷工资设艺料技高试术中卷0资不配料仅置试可技卷以术要解是求决指,吊机对顶组电层在气配进设置行备不继进规电行范保空高护载中高与资中带料资负试料荷卷试下问卷高题总中2体2资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况1卷中下安,与全要过,加度并强工且看作尽护下可1都关能可于地以管缩正路小常高故工中障作资高;料中对试资于卷料继连试电接卷保管破护口坏进处范行理围整高,核中或对资者定料对值试某,卷些审弯异核扁常与度高校固中对定资图盒料纸位试,置卷编.工保写况护复进层杂行防设自腐备动跨与处接装理地置,线高尤弯中其曲资要半料避径试免标卷错高调误等试高,方中要案资求,料技编试术写5、卷交重电保底要气护。设设装管备备置线4高、调动敷中电试作设资气高,技料课中并3术试、件资且中卷管中料拒包试路调试绝含验敷试卷动线方设技作槽案技术,、以术来管及避架系免等统不多启必项动要方高式案中,;资为对料解整试决套卷高启突中动然语过停文程机电中。气高因课中此件资,中料电管试力壁卷高薄电中、气资接设料口备试不进卷严行保等调护问试装题工置,作调合并试理且技利进术用行,管过要线关求敷运电设行力技高保术中护。资装线料置缆试做敷卷到设技准原术确则指灵:导活在。。分对对线于于盒调差处试动,过保当程护不中装同高置电中高压资中回料资路试料交卷试叉技卷时术调,问试应题技采,术用作是金为指属调发隔试电板人机进员一行,变隔需压开要器处在组理事在;前发同掌生一握内线图部槽 纸故内资障,料时强、,电设需回备要路制进须造行同厂外时家部切出电断具源习高高题中中电资资源料料,试试线卷卷缆试切敷验除设报从完告而毕与采,相用要关高进技中行术资检资料查料试和,卷检并主测且要处了保理解护。现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
医学美容试验室实训项目安排

实验项目细则实验一:香皂的制备一、实验目的1、掌握皂化反应原理及肥皂的制备方法;2、掌握普通回流装置的安装与操作方法;3、熟悉盐析原理,熟练掌握沉。
二、实验原理动物脂肪主要成分是高级脂肪酸甘油酯,在与碱性溶液共热下,可使油脂的酯基发生水解反应(皂化反应),生成高级脂肪酸钠(即肥皂)以及丙三醇(甘油)。
反应混合液中加入溶解度较大的无机盐,以降低水对有机酸盐(肥皂)的溶解作用,可使肥皂较为完全地从溶液中析出(盐析),从而分离出肥皂和甘油。
三、实验主要仪器与用品仪器:150及300mL烧杯各一个,玻棒。
用品:猪油(或其他动植物脂或油),NaOH, 95%酒精,饱和食盐水。
四、实训步骤(1)在150mL烧杯里,盛6g猪油和5mL 95%的酒精,然后加10mL40%的NaOH溶液。
用玻棒搅拌,使其溶解(必要时可用微火加热)。
(2)水浴中,并不断用玻璃捧搅拌。
在加热过程中,倘若酒精和水被蒸发而减少应随时补充,以保持原有体积。
为此可预先配制酒精和水的混合液(1:1) 20mL,以备添加。
(3)加热约20min后,皂化反应基本完全。
若须检验,可用玻棒取出几滴试样放入试管,在试管中加入蒸馏水5〜6mL,加热振荡。
静置时,有油脂分出,说明皂化不完全,可滴加碱液继续皂化。
(4)将20mL热的蒸馏水慢慢加到皂化完全的粘稠液中,搅拌使它们互溶。
然后将该粘稠液慢慢倒入盛入150mL热的饱和食盐溶液中,边加边搅拌。
静置后,肥皂便盐析上浮,待肥皂全部析出、凝固后可用玻棒取出,肥皂即制成。
五、实验思考:请简述皂化反应的基本原理。
实验二:香水的制备一、实验目的了解并熟悉香水的制备过程二、实验用具高档香水中香料含量一股在15%以上,最高可达30%。
多选用天然植物的花和果的芳香油以及动物香料(例如:麝香、灵猫香等)来配制,低档香水多以人造香料来配制,香料含量一般在5%以上花露水主要成分:无水乙醇5mL,纯净水45mL,柠檬草精油2滴,薄荷精油1滴。
四轮定位实验报告.doc

四轮定位实验报告项目四汽车四轮定位角度的测量一、实验目的1.了解本实验所用仪器以及测量原理;2.掌握测试方法。
二、实验学时2.学时三、实验器材德国博世FWA515四轮定位仪一台,剪式举升机一台,奥迪汽车一辆四、实验内容和步骤1.在转向轮定位角度测试前检查汽车轮胎气压和轮毂轴承预紧度应正常。
2.将汽车平稳开至剪式举升机上,并将前轮停在转向盘上。
3.打开电脑,进入四轮定位角度检测界面,与所测车型适配。
针对audi100打开制造商资料库,选择欧洲洲,在车系中找到audi进入后匹配,与生产年份、发动动机排量适应,选择适配车别4.将传感器定位卡盘安装装在车轮上,卡盘轴线应与轮胎中心重合;将四个传感器安安装在卡盘上,连接传感器电源并打开各自机头电源,调整整其水平并锁紧。
为了消除轮胎钢圈端面不平对外倾测量量数值的影响,需要对轮辋进行失圆补偿到水平,依次按动动图片中的1“启动、完成补偿键”、2“补偿键”按钮,,等到出现4所示,转动车轮180度,再调传感器水平后后,依次按动3、1按钮,完成补偿,将车落下)5.拔拔取出转向盘上的锁止销,用专用工具将汽车制动锁止,将将转向盘转动向右10,车轮回正后再左转10。
6.转转向轮回正,读取各转向定位角度数值。
7.不正常数值值需进行调整。
利用剪式举升机将汽车调到合适高度,按按照相应得部位调整转向参数,直至进入正常数据范围。
8.打印测试结果。
本试验后可用侧滑试验台测试转向轮轮的侧滑量,以检验前束与车轮外倾角的配合。
五、注意意事项1.在转向轮定位角进行测试前应对汽车轮胎气压压和轮段轴承紧度进行检查。
以免影响测量准确度。
2.该项实验重复三次进行,记录测试结果,计算平均值。
3.车辆行驶、举升过程应注意安全。
00实验一四四轮定位实验一.实验目的:1.掌握汽车车轮定位位参数定义和各定位参数的作用。
2.学会四轮定位仪仪的使用方法,检测出被测车辆的四轮定位参数。
3.了解定位参数的调整方法。
二。
directX实验四报告

实验四DirectX光照、材质和纹理实验报告项目1:DirectX材质和光照实验在例程Cube的基础上,完成以下步骤:1)实现平行光照明。
2)黄色材质设定。
3)增加一个蓝色点光源。
在实验过程中注意灯光设置的方向、颜色等参数设定。
1)实现平行光照明2)黄色材质设定在头文件d3dUtility.h中添加光照的函数等等d3dUtihty.h 卡x d3dUtihty.cpp cube.cpp5] Cube(} d3d50delete t:51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71+ = U;constconstconstconstconstconstconstconstD3DKCOLOR WITH 二D3DCOLOR_KRGB (255, 255, 255); D3DKCOLORBLACK = D3DCOLOR.XRGE(0, 0, 0):D3DXCOLOR RED = D3DCOLOR_XRGB(255,山0):D3DXCOLOR GREEN 二D3DCOLOR_KRGB(0, 255, 0);D3DKCOLOR BLUE 二D3DCOLOR_KRGB(0, 0, 255);D3DKCOLOR YELLOW = D3DCOLOR_KRGB(255, 255, 0);D3DKCOLOR CYAN = D3DCOLOR_KRGB (0, 255, 255::':D3DXCOLOR WENTA = D3DCOLOR_XRGB (255, 0, 255);//LightsD3DLIGHT9 InitDirect ionalLight(D3DXVECTOR3* direct ion, D3DXCOLOR* color);D3DLIGHT9 InitPointLight(D3DKVECTOR3* position, D3DKCOLOR* culur);D3DLIGHT9 InitSpotLight (D3DXVECTOR3* posit ion, D3DKVECTOR3* direction, D3DKCOLOR* culur): //MaterialsD3DMATERIAL"mitMlHL(D3DXCQLaR 瓦D3DXC0L0R d. D3风COLOR 毎D3DXCQL0R 巳floatd3dUtility.h -f X ® Cube596061626364656667686970717273747576777879dSdUtihty.cpp cube.cpp~ O d3d Tconst D3DKCOLOR YELLOW = D3DCOLOR_KRGB(255, 255, 0): constD3DXCOLOR CYAN = D3DCOLOR_XRGB(0, 255, 255): const D3DXCOLORJIAGENTA = D3DCOLOR_XRGB (255, 0, 255)://LightsD3DLIGHT9 ImtDirect ionalLight (D3DKVECTOR3* direct ion, D3DKCOLOR* cclur):D3DLIGHT9 InitPointLight(D3DXVECTOR3* positlun, D3DXCOLOR* culur);D3DLIGHT9 InitSpotLight(D3DXVECTOR3* posit ion, D3DXVECTOR3* direct ion, D3DXCOLOR* color)://MaterialsD3DMATERL虬9 InitJiItrl (D3DKCOLOR a, D3DKCOLOR d, D3DKCOLOR * D3DKCOLOR 土float P);const D3DMATEEL虬9 TOITE_MTF1 = InitMtrl (:WTE_, WHITE.. TOITE., BLACK, 2. Of): constD3DMATERIAL9 RH)_MTRL = InitMt rl (FED, RED, RED, BLACK, 2. Of);const D3DMATEEL虬9 GEEE1LMTRL = InitMtrl (:GF£EN, GREEN, GEEEM, BLACK, 2. Of);const D3DMATEE:UL9 BLUE_MTF1 = InitMtrl (BDJE., BLUE., BLUE., BLACK, 2. Of):const D3DMATERIAL9 YELLOW项TRL = InitMtrl(YELLOW, YELLOW, YELLOW, BLACK, 2.Of);在源文件d3dUtility.cpp中添加光源ID3DLIGHT9 d3d::InitDirectionalLight(D3DKVECTOR3+ direction, D3DKCOLOR* color){D3DLIGHT9 light:::ZeroMemory t&lightj sizeof(light));light.Type = D3DLIGHT_DIRECTIONAL;light. Ambient = *color * 0.6f:light. Diffuse = *color:light. Specular = *color * 0. 6f:light. Direction = *direct ion;return light;.}I d3d::InitPointLight(D3DKVECTORS* position, D3DKCOLOR* color){D3DLIGHT9 light:::ZeroMemory(flightj sizeof(light));light. Type = D3DLIGHT_POINT:light. Ambient = *color * 0. 6f:light. Diffuse = *color:light. Specular = *color * 0.6f;light. Posit ion 二*posit ion:light. Range = 1000.Of:light. Falloff = 1. Of;1 i ght. At t enuat i on0 = 1. Of ;light. Attenuationl = 0. Of:light. Attenuation2 = 0. Of;return light:}D3DLIGHT9 d3d::InitSpotLight(D3DKYECTOR3* position, D3DKYECTOR3* direction, D3DKCOLOR* color) { D3DLKHT9 light:::ZeroMemory(felightj sizeof(light));light.Type = D3DLIGHT_SPOT;light. Ambient = *color * 0. Of:light.Diffuse = *color:light.Specular = *color * 0. 6f:light.Posit ion = *posit ion:light. Direct ion = *direction;light. Range = 1000.Of:light. Falloff = 1. Of;1 i ght. At t enuat i onO = 1. Of ;light. Attenuationl = 0. Of :1 ight. Att enuat ion2 = 0. Of :light. Theta = 0. 4f :light.Phi = 0. 9f;return light;) {-D3DMATEEIAL9 d3d::InitMtrl(D3DKC0L0R 头D3DXC0L0R d, D3DXC0L0R * D3DXC0L0R * floatP D3DMATERIAL9 mtrl;mt rl. Ajribient = a;mtrl.Diffuse = d;mtrl. Specular = s ;mtrl. Emissive =已;mtrl. Power = p :return mtrl:在源文件cube.cpp中修改和添加相关内容首先使立方体住手旋转//y += timeDelta;然后改一串代码const DWORD VerteK::FVF = D3DFVF_KYZ|D3DFVF_N0R]UL;接下来在bool Setup函数中作如下代码□ bool Setup (){//Turn on lightsDevice->SetRenderState(D3DRS_LIGHTINGj true): El //// Create vertex and index buffers.//Creat and set the mat erialD3DMTERIAL9 mtrl;mt rl. Ambient = d3d: : YELLOW:d3d::YELLOW;d3d: : YELLOW:d3d: : BLACK :D 即i c 已- > S et Mat 日r i al (&mt r 1) ;//Setup a directional lightD3DLIGHT9 dir;::ZeroMemory(^dirj sizeof(dir)): dir.Type = D3DLIGHT_DIRECTZONAL: dir.Diffuse = d3d::WHITE;dir. Specular = d3d::VHITE * 0. 3f;dir. Ambient = d3d::WHITE *0.6f:dir. Direct ion = D3DKVECTOR3(1. Of, 0.Of, 0.Of);Device->SetLight (Cl, &dir);Device->LightEnable(0j true);Device->SetRenderState(D3DRS_NOEMALIZENORMAL* true);Device->SetRenderState(D3DRS_SPECULARENABLEj t rue);注释与修改两串代码mtrl.Emissive = d3d::BLACK; 运行结果如下然后改变光的方向Directs D 9 A.pp3)增加一个蓝色点光源//Setup a directional light D3DKVECTOR3 posd.Of, 1. Of, 0. Of): D3DKCOLOR c = d3d::GREEN;D3DLIGHT9 point = d3d::InitPointLight(^pos^ ; // Set and Enable the light.Device->SetLight(1』^point); Device->LightEnable(15true);D3DLIGHT9 dir;::ZeroMemory sizeof(dir)); dir.Type = D3DLIGHT_DIEECTIONAL;dir. Diffuse = d3d::RED:dir. Specular = d3d::RED * 0.3f;dir. Ambient = d3d::RED * 0.6f;dir. Direction = D3DKVECTOR3 (1.Of, 0.Of, 0.Of);项目2:DirectX纹理实验在项目1的程序基础上完成一下步骤:1)新增一个立方体增加纹理,图片请自己准备。
感染相关实验四项目判断指标

感染相关实验室项目判断指标
一、血常规:
1.白细胞计数(WBC)
1成人、儿童:>10×109/L
2婴儿:>12×109/L
3新生儿:>20×109/L
2.白细胞分类(中性粒细胞计数)
1成人、儿童:>70%
2②婴儿、新生儿:>40%
二、体液常规:
1.尿沉渣分析白细胞:
1男性:>10个/μl
2女性:>15个/μl
2.粪便涂片镜检:
1白细胞“+”以上
2巨噬细胞“出现”
3.脑脊液检查:
1蛋白定性:呈阳性反应
2白细胞计数:>10×106/L
4.浆膜腔积液检查:
1蛋白总量:>30g/L
②有核细胞计数:>500×106/L(腹水),>1000×106/L(胸水)
3有核细胞涂片:中性粒细胞或淋巴细胞为主
三、C反应蛋白(CRP)
>100㎎/L为细菌感染,>500㎎/L为革兰阴性菌感染
GMP实务—项目四——质量控制实验室管理

精选ppt课件
25
培训和考核形式:
培训方式/工作效果
考核方式
演讲
提问回答、笔试、相关负责人评价
内部讨论
相关负责人评价
自学
提问回答、笔试、相关负责人评价
现场演示 工作效果
精选ppt课件
16
状态标识
—— 绿色:完好/运行 —— 黄色:待用 —— 红色:停用
精选ppt课件
17
设备放置和操作要求
仪器设备的放置,使用环境应符合技术资料仪器使 用说明书的规定,如仪器设备对环境有要求时,其 放置的房间应有环境检测、控制手段,并有专人或 自动记录仪每天进行环境的监控记录。
仪器的维护: 应严格按照仪器设备的维护保养操作规程操作,在 做好日常维护保养的同时,使用频次较少的大型仪 器设备及长期不用的电子仪器,每月应至少开机检 查一次,并做好维护保养记录。
精选ppt课件
22
6、生物制品检验人员:应根据所生产制品和所从事生产操作 进行专业知识和安全防护要求的培训;应对所生产品种的生物 安全性进行评估,根据评估结果接种相应疫苗,并定期体检。 从事生产操作的人员应与动物饲养人员分开,不得兼任。
7、中药材和中药饮片质量管理人员: 具有中药学、生药学或相关专业大专以上学历,并至少有
精选ppt课件
29
储存和使用
1、试剂应按试剂瓶上要求的储存条件进行储存。应储存在 密闭容器中,避免阳光直射并置于干燥、温度适宜的环境中, 试剂库温湿度应有记录,应注意易吸潮、不稳定试剂的管理;
2、剧毒或易制毒试剂的储存和使用需符合公安机关的相关 规定,应有独立的存储区域(如使用保险柜),专人管理, 双人复核;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验项目四 进程通信
一、 实验目的
1. 了解什么是消息,熟悉消息传送原理。
2. 了解和熟悉共享存储机制。
3. 掌握消息的发送与接收的实现方法。
二、 实验内容
1. 根据消息传送机理,使用系统调用msgget( ), msgsnd( ),
msgrev( ), 及msgctl( )编制一长度为1k的消息发送和接收的
程序,要求在程序中完成10次消息的发送和接收,每次发送
消息结束和接收消息结束都需给出相应的屏幕提示,且每次
发送的的内容不少于一个字符,并能在接收端输出。
2. 根据共享存储区原理,使用系统调用shmget( ), shmat( ),
shmdt( ), 及shctl( )编制程序,要求创建一个长度为1k的共
享存储区,并完成10次数据的发送和接收,每次发送数据结
束和接收数据结束都需给出相应的屏幕提示,且每次发送的
的数据应能在接收端输出。
三、 源程序及运行结果
1. 源程序:
#include
#include
#include
#include
#include
#define MSGKEY 75
struct msgform
{
long mtype;
char mtext[1024];
}msg;
int msgqid;
void client()
{
int i=0;
for(;i<10;i++)
{
msgqid=msgget(MSGKEY,0777);
msg.mtype=1;
msg.mtext[1]=i+0;
printf(" send %d\n",i+0);
msgsnd(msgqid,&msg,1024,0);
sleep(1);
}
exit(0);
}
void main()
{
client();
}
#include
#include
#include
#include
#include
#define MSGKEY 75
struct msgform
{
long mtype;
char mtext[1024];
}msg;
int msgqid;
void server()
{
int i=0;
while(1)
{ int count=0;
msgqid=msgget(MSGKEY,0777|IPC_CREAT);
msgrcv(msgqid,&msg,1024,0,0);
printf(" get message");
printf("%d\n",msg.mtext[msg.mtype]);
msgctl(msgqid,IPC_RMID,0);
count++;
if(count==9)
{
exit(0);
}
}
}
int main()
{
server();
return 0;
}
运行结果:(截图)
2源程序:
#include
#include
#include
#include
#include
#define SHMKEY 75
int main()
{
int shmid;
int *addr;
int i=0;
shmid=shmget(SHMKEY,1024,0777);
addr=shmat(shmid,0,0);
while( i<10)
{
if(*addr==0)
{
*(addr+1)='a'+i;
printf("client send message__%c\n",*(addr+1));
i++;
*addr=1;
}
else
sleep(1);
}
return 0;
}
#include
#include
#include
#include
#include
#define SHMKEY 75
int main()
{
int shmid;
int i=0;
int *addr;
shmid=shmget(SHMKEY,1024,0777|IPC_CREAT);
addr=shmat(shmid,0,0);
*addr=0;
while(i<10)
{
if(*addr==0)
sleep(1);
else
{
printf("server get message__%c\n",*(addr+1));
*addr=0;
i++;
}
}
shmctl(shmid,IPC_RMID,0);
exit(0);
}
运行结果:(截图)
四、 实验分析与总结
对实验运行结果进行分析:试比较实验中两种方法实现进程通信
的不同之处。