




已阅读5页,还剩96页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,#includestdio.hintmain()intscore;printf(请输入成绩);scanf(%d,有一种写法case5|4|3|2|1:printf(“D等n”);,#includestdio.h#includemath.hintmain()floata,b,c,k,x1,x2,r,i;scanf(%f,%f,%f,第六章,循环结构程序设计,本章要点,循环的基本概念不同形式的循环控制多重循环问题,主要内容,6.1程序中需要用循环结构6.2用while语句和do-while语句实现循环6.3用for语句实现循环6.4循环的嵌套6.5用break语句和continue语句改变循环状态6.6几种循环的比较6.7程序举例6.8提高部分,6.1程序中需要用到循环结构,6.1程序中需要用到循环结构,6.1程序中需要用到循环结构,6.1程序中需要用到循环结构,如何才是个头啊!,6.1程序中需要用到循环结构,6.1程序中需要用到循环结构,令这个数等于x,每次让x=x/10,除一次,记数器count+计算机从右往左数,6.1程序中需要用到循环结构,6.1程序中需要用到循环结构,所以循环结构的引入可以优化程序结构,6.1程序中需要用到循环结构,几种常见的循环结构1.goto2.for(i=0;i100;i+)3.while(i100)i+;4.doi+;while(i100);5.(隐含)递归函数调用(阶乘函数),6.1程序中需要用到循环结构,问题1:,问题2:求学生平均成绩分数相加后除以课数,循环结构就是用来处理需要重复处理的问题的,所以又称重复结构。它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。循环分为两种:无休止循环和有终止循环构成有效循环的条件:循环体和循环结束条件,goto语句以及用goto语句构成循环,goto语句为无条件转向语句,它的一般形式为goto语句标号;语句标号用标识符表示,它的定名规则与变量名相同,即由字母、数字和下划线组成,其第一个字符必须为字母或下划线。例如:gotolabel_1;合法;goto123;不合法.早期basic语言,结构化程序设计方法主张限制使用goto语句,因为滥用goto语句将使程序流程无规律、可读性差.一般来说,可以有两种用途:(1)与if语句一起构成循环结构;(2)从循环体中跳转到循环体外。但是这种用法不符合结构化原则,一般不宜采用,只有在不得已时(例如能大大提高效率)才使用.,goto语句以及用goto语句构成循环1,用if语句和goto语句构成循环,求1到100的和#includestdio.hintmain()inti,sum=0;i=1;loop:if(i=100)sum=sum+i;i+;gotoloop;printf(%dn,sum);return0;,说明:这里用的是“当型”循环结构,当满足“i=100”时执行花括弧内的循环体。,运行结果:5050,6.2用while语句和do-while语句实现循环6.2.1用while语句实现循环,while语句用来实现“当型”循环结构一般形式:while(表达式)语句当表达式为非0值时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行循环体,即内嵌语句。,例题6.1,求1+2+3+100的和,解题思路,(1)开始时使sum的值为0,被加数i第一次取值为1。开始进入循环结构。(2)判别“i100”条件是否满足,由于i小于100,因此“i100”的值为真。所以应当执行其下面矩形框中的操作。(3)执行sum=sum+i,此时sum的值变为1了,然后使i的值加1,i的值变为2了,这是为下一次加2作准备。流程返回菱形框。(4)再次检查“i100”条件是否满足,由于i的值为2,小于100,因此“i100”的值仍为真,所以应执行其下面矩形框中的操作。(5)执行sum=sum+i,由于sum的值已变为1,i的值已变为2,因此执行sum=sum+i后sum的值变为3。再使i的值加1,i的值变为3。流程再返回菱形框。(6)再次检查“i100”条件是否满足,如此反复执行矩形框中的操作,直到i的值变成了100,把i加到sum中,然后i又加1变成101了。当再次返回菱形框检查“i100”条件时,由于I已是101,大于100,“i100”的值为假,不再执行矩形框中的操作,循环结构结束。,6.2用while语句和do-while语句实现循环,#includevoidmain()inti,sum=0;/*sum是用来存放累加和的变量*/*初值为0*/i=1;while(i=100)/*当I小于或等于100时*/*执行下面花括号中的复合语句*/sum=sum+i;/*将i的当前值累加到变量sum中*/i+;/*使i的值加1*/printf(%dn,sum);,说明:(1)循环体如果包含一个以上的语句,应该用花括号括起来,以复合语句形式出现.(2)在循环体中应有使循环趋向于结束的语句。,运行结果:5050,编写程序,6.2用while语句和do-while语句实现循环,6.2用while语句和do-while语句实现循环6.2.2用do-while语句实现循环,do-while语句的特点:先执行循环体,然后判断循环条件是否成立。,执行过程:先执行一次指定的循环体语句,然后判别“表达式”,当表达式的值为非0(“真”)时,返回重新执行循环体语句,如此反复,直到表达式的值等于0(“假”)为止,此时循环结束。while语句和do-while语句的关系:同一个问题既可以用while循环处理,也可以用do-while循环来处理。二者是可以互相转换的。,一般形式:do循环体语句while(表达式);,例题6.2求1+2+3+100的和#includevoidmain()inti,sum=0;i=1;do/*在循环开始时不检查条件,先执行一次循环体*/sum=sum+i;i+;while(i=100);printf(%dn,sum);,运行结果:5050,说明:可以看到,结果和例5.1完全相同。,编写程序,6.2用while语句和do-while语句实现循环,例题6.3,募集慈善基金10000元,有若干人捐款,每输入一个人的捐款数后,计算机就输出当时的捐款总和。当某一次输入捐款数后,总和达到或超过10000元时,即宣告结束,输出最后的累加值。,解题思路,解此题的思路是设计一个循环结构,在其中输入捐款数,求出累加值,然后检查此时的累加值是否达到或超过预定值,如果达到了,就结束循环操作。,6.2用while语句和do-while语句实现循环,#includevoidmain()floatamount,sum=0;/*变量sum用来存放累加和*/doscanf(%f,运行结果:1000(输入捐款额)18501500260025001200sun=10650.00,说明:设计循环结构,要考虑两个问题:一是循环体,二是循环结束条件。注意while循环中判断的条件是循环继续的条件,而不是结束条件。,6.2用while语句和do-while语句实现循环,编写程序,while语句和用do-while语句的比较:在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分是一样的,它们的结果也一样。但是如果while后面的表达式一开始就为假(0值)时,两种循环的结果是不同的while()语句后面没有分号dowhile();如果没有会报错,6.2用while语句和do-while语句实现循环,例while和do-while循环的比较(1)#include(2)#includevoidmain()voidmain()intsum=0,i;intsum=0,i;scanf(“%d,,运行结果:1sum=55再运行一次:11sum=0,运行结果:1sum=55再运行一次:11sum=11,说明:当while后面的表达式的第一次的值为“真”时,两种循环得到的结果相同。否则,二者结果不相同。,6.3用for语句实现循环6.3.1for语句的一般形式和执行过程,C语言中的for语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替while语句。一般形式:for(表达式1;表达式2;表达式3)语句,6.3用for语句实现循环6.3.1for语句的一般形式和执行过程,for语句的执行过程:(1)先求解表达式1。(2)求解表达式2,若其值为真(值为非0),则执行for语句中指定的内嵌语句,然后执行下面第(3)步。若为假(值为0),则结束循环,转到第(5)步。(3)求解表达式3。(4)转回上面第(2)步骤继续执行。(5)循环结束,执行for语句下面的一个语句。,for语句等价于下列语句:表达式1;while(表达式2)语句;表达式3;,6.3用for语句实现循环,6.3用for语句实现循环,#includestdio.hintmain()inti;for(i=10;i9;i+)printf(循环语句执行);printf(%dn,i);return0;,for语句最简单的形式:for(循环变量赋初值;循环条件;循环变量增值),例如:for(i=1;i=100;i+)sum=sum+i;,相当于:i=1;while(i=100)sum=sum+i;i+;,6.3用for语句实现循环6.3.1for语句的一般形式和执行过程,显然,用for语句简单、方便。,6.3用for语句实现循环6.3.2for循环程序举例,国王的小麦。相传古代印度国王舍罕要褒赏他的聪明能干的宰相达依尔(国际象棋的发明者),国王问他要什么?达依尔回答说:“国王只要在国际棋的棋盘第1个格子中放1粒麦子,第2个格子中放2粒麦子,第3个格子中放4粒麦子,以后按此比例每一格加一倍,一直放到第64格(国际象棋的棋盘8*8=64格),我感恩不尽,其他什么都不要了。”国王想,这有多少!还不容易!让人扛来一袋小麦,但不到一会儿全用没了,再来一袋很快又用完了。结果全印度的粮食全部用完还不够。国王纳闷,怎样也算不清这笔账。现在我们用计算机来算一下。,例题6.4,解题思路,麦子的总粒数是:分别计算出每一格的麦子粒数,把它们加起来,就得到总粒数。据估算,1小麦约有1.42粒,可以计算出小麦的体积。可以用for语句实现循环。,6.3用for语句实现循环,#includevoidmain()doublep=1,t=1,v;inti;for(i=1;i64;i+)/*执行63次循环*/p=p*2;/*p是当前一个格子中的麦子粒数*/t=t+p;/*t是当前麦子总粒数*/v=t/1.42e8;/*v是总体积*/printf(total=%en,t);/*用指数形式输出麦子总粒数*/printf(volume=%en,v);/*用指数形式输出麦子总体积*/,运行结果:total=1.844674e+019volnme=1.299066e+011,编写程序,6.3用for语句实现循环,说明:变量i用来控制循环的次数,开始时i=1,在完成第1次循环后,i的值加1变为2,由于264,所以执行第2次循环,依此类推,当i变到63时,执行最后一次循环,i再变为64,由于i不再小于64了,不再执行循环。接着计算体积,输出结果。,6.3用for语句实现循环,6.3用for语句实现循环,人口增长预测。据2005年末统计,我国人口为130756万人,如果人口的年增长率为1%,请计算到哪一年中国总人口超过15亿。,例题6.5,解题思路,计算人口增长和计算存款利息的公式是相同的。假设原来人口为,则一年后的人口:其中r是年增长率。用此公式依次计算出每年的人口,每算出一年的人口后就检查一下是否达到或超过15亿?如果未达到或超过15亿,就再计算下一年的人口,直到某一年的人口达到或超过15亿为止。,编写程序,6.3用for语句实现循环,#includevoidmain()doublep=1.30756e9,r=0.01;inty;for(y=2006;p1.5e9;y+)/*赋值号两侧的变量p代表不同含义*/p=p*(1+r);printf(year=%d,p=%en,y-1,p);,运行结果:year=2019,p=1.503007e+009,说明:注意区分变量p在不同阶段中的不同含义。y代表年份。循环体中只有一个语句,用来计算从2006年开始的各年的人口数。在for语句中设定的循环条件是p15亿,当某一年的p达到或超过15亿,就停止循环,输出年份和当年的人口数。由于在最后结束循环前y又加了1,因此在输出年份时应输出y-1的值而不是y的值。,6.3用for语句实现循环,6.3用for语句实现循环6.3.2for循环程序举例,一个变量开始时有一初值,通过一定的运算,可以推算出一个新的值,再从这个新值又推出下一个新值,即不断用计算出的新值去取代原有的值,这种方法称为迭代。上面的计算公式p*(1+r)称为迭代公式。迭代算法一般是用循环来实现的。迭代是一种常用的算法,用人工实现很麻烦,而用计算机实现却十分方便。,6.3用for语句实现循环,输入一个正整数aa为偶数则sum=1+1/2+1/4+.+1/a若为奇数则求sum=1+1/3+1/5+.+1/a,例题6.6,解题思路,先进行奇偶判断,如果为奇数有个a=1的特例,除开a=1以外的情况则套用公式;如果为偶数则直接套用公式。注意i变量每次+2可以保证奇偶性和sum与a的数据类型即可,编写程序,6.3用for语句实现循环,intmain()printf(请输入任意一个数n);floatsum=1.0;inta,i;scanf(%d,6.4循环的嵌套,一个循环体内又包含另一个完整的循环结构称为循环的嵌套。内嵌的循环中还可以嵌套循环,这就是多层循环。三种循环(while循环、do-while循环和for循环)可以互相嵌套。,6.4循环的嵌套,下面几种都是合法的形式:(1)while()(2)do(3)for(;)while()dofor(;)while();while();,6.4循环的嵌套,(4)while()(5)for(;)(6)dodowhile()for(;)while()while(),例输出九九乘法表,解题思路,分行与分列考虑,共9行9列,i控制行,j控制列,所以需要用到两层for循环,外层控制行变化,内层控制j变化,然后遍历输出每一个i*j的结果即可,6.4循环的嵌套,编写程序,6.4循环的嵌套,#includeintmain()inti,j,result;printf(n);for(i=1;i10;i+)/*先遍历行*/for(j=1;jk,同时n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。所以n和k都在存放入新值,编写程序,6.4循环的嵌套,#includeintmain()intn,i;printf(npleaseinputanumber:n);scanf(%d,6.5提前结束循环break和continue6.5.1用break语句提前退出循环,break语句可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。一般形式:break;说明:break语句不能用于循环语句和switch语句之外的任何其他语句中。,统计各班级的学生的平均成绩。已知各班人数不等,但都不超过30人。编一个程序能处理人数不等的各班学生的平均成绩。,例题6.7,解题思路,如果各班人数相同,问题比较简单,只需用一个for语句控制即可:for(i=1;i31;i+)但是现在有的班不足30人,应当设法告诉计算机本班的人数,使程序也能统计出该班的平均成绩。可以约定,当输入的成绩是负数时,就表示本班数据已结束(一般情况下成绩不会是负数)。在程序接收到一个负的分数时就提前结束循环,计算出本班平均成绩。用break语句可以用来实现提前结束循环。,6.5提前结束循环,编写程序,6.5提前结束循环,#includevoidmain()floatscore,sum=0,average;inti,n;for(i=1;i31;i+)scanf(%f,运行结果:100(输入一个学生成绩)8070-1(输入负数,表示本班数据结束)n=3,average=90.00,说明:如果一个班有30人,则输入完30人的成绩后累计总分后自动结束循环,不必再输入负数作为结束标志。在结束循环后i的值等于31(因为执行完30次循环后,i再加1,变成31,此时才终止循环),因此学生数n应该等于i-1。如果一个班人数少于30人,则在输入完全班学生的成绩后,输入一个负数,此时程序就跳过循环体其余的语句,也不再继续执行其余的几次循环。直接跳到循环下面的语句(n=i-1;)继续执行。刚输入的数不进行累加(不执行sum=sum+score;)。注意此时i的值,假如已输入了25个有效分数,在第26次循环时输入一个负数,此时i的值是26,而学生数n应是i-1。,6.5提前结束循环,6.5提前结束循环6.5.2用continue语句提前结束本次循环,continue语句作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定.一般形式:continue;,6.5提前结束循环6.5.2用continue语句提前结束本次循环,continue语句和break语句的区别:continue语句只结束本次循环,而不是终止整个循环的执行。,while(表达式1)if(表达式2)continue;,continue语句和break语句的区别:break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。,while(表达式1)if(表达式2)break;,6.5提前结束循环6.5.2用continue语句提前结束本次循环,continue语句和break语句的区别:continue不改变循环次数,break则由可能改变inti=0;inta=2;for(i=0;i10;i+)if(i=a)break;/*continue*/;printf(apple);,6.5提前结束循环6.5.2用continue语句提前结束本次循环,例如:左边的例子中如果是break那么循环语句执行了3次,输出2次apple;如果是continue,循环一共执行了10次,输出10次apple。,输入一个班全体学生的成绩,把不及格的学生成绩输出,并求及格学生的平均成绩。,例题6.8,解题思路,在进行循环中,检查学生的成绩,把其中不及格的成绩输出,然后跳过后面总成绩的累加和求平均成绩的语句。用continu语句即可处理此问题。,6.5提前结束循环,#includeintmain()floatscore,sum=0,average;inti,n=0;for(i=1;i6;i+)/*假设有5个学生*/printf(pleaseenterscore:);scanf(%f,运行结果:pleaseenterscore:89pleaseenterscore:56Fail:56pleaseenterscore:76pleaseenterscore:58Fail:58pleaseenterscore:98n=3average=87.67,6.5提前结束循环,编写程序,说明:为减少输入量,本程序只按5个学生处理。在输入不及格学生成绩后,输出该成绩,然后跳过循环体中未执行的语句,即不参加累计总分sum,也不累计合格学生数n。但是,继续执行后面的几次循环。,6.5提前结束循环,6.6几种循环的比较,(1)三种循环都可以用来处理同一问题,一般情况下它们可以互相代替。(2)在while循环和do-while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体中包含使循环趋于结束的语句(如i+,或i=i+1等)。,6.6几种循环的比较,for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语句的功能更强,凡用while循环能完成的,用for循环都能实现。(3)用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。,6.6几种循环的比较,(4)while循环、dowhile循环和for循环,都可以用break语句跳出循环,用continue语句结束本次循环。,有一对兔子,出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假设所有兔子都不死,问40个月的兔子总数为多少?,例题6.9,解题思路,6.7程序举例,可以看到每个月的兔子总数依次为1,1,2,3,5,8,13这就是有名的费波那西(Fibonacci)数列。,6.7程序举例,编写程序,6.7程序举例,#includevoidmain()intf1,f2;inti;f1=1;f2=1;for(i=1;iZ|cz)/*请和程序笫7行比较*/c=c-26;因为如果所有小写字母都满足“cZ”的条件,从而也都执行“c=c-26;”语句,这就会出错。因此必须限制其范围为“cZintsum=0,i;scanf(“%d,,运行结果:1sum=55再运行一次:11sum=0,运行结果:1sum=55再运行一次:11sum=11,说明:当while后面的表达式的第一次的值为“真”时,两种循环得到的结果相同。否则,二者结果不相同。,6.8提高部分,6.8提高部分6.8.2for语句的各种形式,for语句相当灵活,形式变化多样:(1)for语句的一般形式中的“表达式1”可以省略,此时应在for语句之前给循环变量赋初值。注意省略表达式1时,其后的分号不能省略。如:for(;i=100;i+)sum=sum+i;执行时,跳过“求解表达式1”这一步,其他不变。,(2)如果表达式2省略,即不判断循环条件,循环无终止地进行下去。也就是认为表达式2始终为真。如:for(i=1;i+)sum=sum+i;表达式1是一个赋值表达式,表达式2空缺。它相当于:i=1;while(1)sum=sum+1;i+;,6.8提高部分6.8.2for语句的各种形式,(3)表达式3也可以省略,但此时程序设计者应另外设法保证循环能正常结束。如:for(i=1;i=100;)sum=sum+i;i+;在上面的for语句中只有表达式1和表达式2,而没有表达式3。i+的操作不放在for语句的表达式3的位置处,而作为循环体的一部分,效果是一样的,都能使循环正常结束。,6.8提高部分6.8.2for语句的各种形式,(4)可以省略表达式1和表达式3,只有表达式2,即只给循环条件。如:for(;i=100;)while(i=100)sum=sum+i;相当于sum=sum+i;i+;i+;在这种情况下,完全等同于while语句。可见for语句比while语句功能强,除了可以给出循环条件外,还可以赋初值,使循环变量自动增值等。,6.8提高部分6.8.2for语句的各种形式,(5)3个表达式都可省略,如:for(;)语句相当于while(1)语句即不设初值,不判断条件(认为表达式2为真值),循环变量不增值。无终止地执行循环体。,6.8提高部分6.8.2for语句的各种形式,(6)表达式1可以是设置循环变量初值的赋值表达式,也可以是与循环变量无关的其他表达式。如:for(sum=0;i=100;i+)sum=sum+i;表达式3也可以是与循环控制无关的任意表达式。,6.8提高部分6.8.2for语句的各种形式,表达式1和表达式3可以是一个简单的表达式,也可以是逗号表达式,即包含一个以上的简单表达式,中间用逗号间隔。如:for(sum=0,i=1;i=100;i+)sum=sum+i;或for(i=0,j=100;i=j;i+,j-)k=i+j;表达式1和表达式3都是逗号表达式,各包含两个赋值表达式,即同时设两个初值,使两个变量增值。,6.8提高部分6.8.2for语句的各种形式,在逗号表达式内按自左至右顺序求解,整个逗号表达式的值为其中最右边的表达式的值。如:for(i=1;i=100;i+,i+)sum=sum+i;相当于for(i=1;i=100;i=i+2)sum=sum+i;,6.8提高部分6.8.2for语句的各种形式,(7)表达式一般是关系表达式(如i=100)或逻辑表达式(如ab(c=getchar()!=n;i+=c);在表达式2中先从终端接收一个字符赋给c,然后判断此赋值表达式的值是否不等于n(换行符),如果不等于n,就执行循环体。注意:此for语句的循环体为空语句,把本来要在循环体内处理的内容放在表达式3中,作用是一样的。可见for语句功能强,可以在表达式中完成本来应在循环体内完成的操作。,6.8提高部分6.8.2for语句的各种形式,for(;(c=getchar()!=n;)printf(%c,c);for语句中只有表达式2,而无表达式1和表达式3。其作用是每读入一个字符后立即输出该字符,直到输入一个“换行”为止。请注意,从终端键盘向计算机输入时,是在按Enter键以后才将一批数据一起送到内存缓冲区中去的。,运行情况:Computer(输入)Computer(输出)而不是Ccoommppuutteerr,6.8提高部分6.8.2for语句的各种形式,注意:C语言中的for语句比其他语言(如BASIC,PASCAL)中的FOR语句功能强得多。可以把循环体和一些与循环控制无关的操作也作为表达式1或表达式3出现,这样程序可以短小简洁。但过分地利用这一特点会使for语句显得杂乱,可读性降低,最好不要把与循环控制无关的内容放到for语句中。,6.8提高部分6.8.2for语句的各种形式,Exercise,输入找出1100之间的整数中,是3的倍数或5的倍数这样的数的个数,intmain()intcount=0,n=1;doif(n%3=0|n%5=0)count+;n+;while(n=100);printf(“Thetotalnumberis:%d”,count);return0;,循环计数,计算机械学院某班30名学生的c语言课程的平均成绩,#includeintmain()floataver,sum;intcount,score;sum=0;for(count=1;count=30;count+)scanf(“%d”,,求和,.(不确定人数).,main()floataver,sum=0;intcount=0,score;printf(“Enterscore-1toend:”);scanf(“%d”,longy=0;for(i=1;i=50;i+)for(j=1;j=i;j+)x=x+j;y=y+x;x=0;printf(nvalueis%d,y);,求和,#includestdio.hvoidmain()inti,a=1;floatsum=0;for(i=1;i=100;i+)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校级遴选面试题目及答案
- 还记得吗作文800字10篇范文
- 抒情类作文父亲的爱600字8篇
- 时间的脚印公开课件
- 质量控制(QC)检查问题点与改善方案模板
- 项目进度控制与时间管理表
- 时间与生命的节奏
- 城市环境改造工程承包合同
- 元宵节四百字作文怎么写13篇范文
- 早读课课件神器
- 【优秀】脑膜瘤护理查房课件
- 初中数学教材解读人教八年级上册(2023年修订)第十三章轴对称等边三角形 导学案
- GB∕T 3480.3-2021 直齿轮和斜齿轮承载能力计算 第3部分:轮齿弯曲强度计算
- 社区居民信息登记卡
- 小金库治理-PPT优秀课件
- 水稳层施工方案(完整版)
- 外科医学—颅内和椎管内血管性疾病
- 井控设备(2015)
- 2022交通事故处理委托书范本
- WT-2000少子寿命测试仪的原理及性能
- 抵押物清单模板
评论
0/150
提交评论