第四章 程序设计_第1页
第四章 程序设计_第2页
第四章 程序设计_第3页
第四章 程序设计_第4页
第四章 程序设计_第5页
已阅读5页,还剩114页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1C+的流程控制语句的流程控制语句第四章第四章2结构化程序设计方法三种基本结构三种基本结构1. 顺序结构顺序结构2. 选择结构选择结构3. 循环结构循环结构3流程图表示算法4流程图符号5用流程图表示的三种基本结构用流程图表示的三种基本结构 A B (a) 顺 序 结 构 (b ) 选 择 结 构 B ex p A F T ex p A T F ex p A F T (c) 循 环 结 构 或 6例1. 解方程解方程 ax2+bx+c=02. 求求s=1+2+3+1007用用PAD图表示的三种基本结构图表示的三种基本结构1、顺序、顺序AB2、选择、选择条件?条件?真真假假ABxy?真真假假z=x

2、z=y83、循环、循环A当当P为真为真当型当型i+i=10i+PAYN10 A B (a) 顺 序 结 构 A B P (b ) 选 择 结 构 W H IL E P S (c) W H IL E 型 循 环 结 构 U N T IL P S (d ) U N T IL 型 循 环 结 构 A 1 A 2 P = A n P 1 P 2 P n (e) 多 分 支 结 构 (f) 语 句 标 号 (g ) 定 义 PAD图的基本符号 PADPAD图表示的三种基本结构图表示的三种基本结构11PAD图提供的定义功能 A C B1 B2 P1 WHILE P3 C4 C def C1 C2 C3 P

3、2 121. 顺序结构ABc13 #include using namespace std; int main() coutThis is a C+ program.; return 0; 14 #include using namespace std; int main ( ) int i,j; i=A; j=B; couti jn; return 0; 15 #include using namespace std; int main() float x; int i; x=3.6; i=(int)x; coutx=x,i=iendl; return 0; 16 例:已知三条边,求三角形的

4、面积例:已知三条边,求三角形的面积 S=(a+b+c)/2 面积面积=sqrt(s*(s-a)+s*(s-b)+s*(s-c)#include #include #include using namespace std;int main() double a,b,c; coutabc;17例:求圆的面积例:求圆的面积 s=r2182. 选择结构有三种形式:有三种形式:1. if 选择选择2. if - else 选择选择3. if 嵌套嵌套4. 多条件选择多条件选择(分支语句分支语句)19格式:格式: if(条件(条件P)语句)语句 S1) if if 语句语句P语句语句T功能:当功能:当条件

5、条件P成立时,执行成立时,执行语句语句S1.条件是一表达式,必须有括号;条件是一表达式,必须有括号;2.语句语句S可以是一条语句,也可以是由可以是一条语句,也可以是由 括起来的复合语句括起来的复合语句20if (ab) coutb输出输出 a21例: 计算 int main() int x,y=0; coutx; if (x!=0) y=x+1; cout“y=yendl; 010100 xxxxxy22例:输入a,b,c,输出其中最大值 int main() int x,y=0; coutabc; max=a; if (maxb) max=b; if (maxc) max=c; cout“m

6、ax=maxb输出输出a输出输出b if (ab) couta; else coutb;25例:某运输公司的运费标准如下: 若货重小于若货重小于50公斤(含公斤(含50公斤)时,每公斤收公斤)时,每公斤收5元;元; 若货重大于若货重大于50公斤时,超重部分每公斤公斤时,超重部分每公斤10元。元。 计算运费。计算运费。分析:分析: w*5 if w50 运费运费f = 50*5+(w-50)*10 w5026例:已知三角形的三边,若构成三角形则例:已知三角形的三边,若构成三角形则求该三角形的面积求该三角形的面积#include #include #include using namespace

7、std;int main() double a,b,c; coutabc;if (a+bc & b+ca & c+ab) double s,area; s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c); coutarea=areaendl; else coutit is not a trilateral!=90输出输出优秀优秀TFx=80输出输出良好良好TFx=70输出输出中中不及格不及格TFx=60输出输出及格及格输入一个学生成绩输入一个学生成绩x30注意注意 1) if 后可跟复合语句。后可跟复合语句。 2) 注意注意 ;的位置。;的位置

8、。 3) 注意多重注意多重 if else 的搭配。的搭配。if (ab) a=1; b=0; else a=0; b=1; 31if (i j) i+;if (ij); i+;if 总是与它上面最近的总是与它上面最近的 else 配对,如要改变,用复合语配对,如要改变,用复合语句句 。注意书写格式注意书写格式,相互配对的语句要对齐。,相互配对的语句要对齐。Pi+i+Tij32void main( void ) float a,b,t; /定义变量定义变量coutab; /给变量赋值给变量赋值 a:7, b:3 if(ab) t=a; a=b; b=t; /交换数据,用中间变量交换数据,用中间

9、变量 coutatbendl;/输出变量输出变量bat73773输出结果:输出结果:3 7例:输入两个实数,按代数值由小到大次序输出这两个数例:输入两个实数,按代数值由小到大次序输出这两个数33嵌套的条件语句(举例说明)嵌套的条件语句(举例说明)x=100; a=10; b=20; ok1=5; ok2=0;if(ab) if(b!=15) if(!ok1) x=1; else if (ok2) x=10; x=-1; x=-1344) 多分支语句功能:当表达式为常量表达式功能:当表达式为常量表达式i时,执行相应时,执行相应 的语句的语句Si格式:格式:switch (表达式)表达式) cas

10、e 常量表达式常量表达式1:语句:语句S1 case 常量表达式常量表达式2:语句:语句S2 case 常量表达式常量表达式n:语句:语句Sn default:语句:语句Sn+1 35switch语句语句多分支选择语句。多分支选择语句。if语句只有两个分支,而实际问题中常语句只有两个分支,而实际问题中常常需要用到多分支的选择。如,成绩分为常需要用到多分支的选择。如,成绩分为A(10085)、B(8470)、C(6960)、D(60以下以下)等。等。A10085YBY8470CY6960DYno passNNNN显示出错显示出错36cin.get(grade);if(grade= =A) cou

11、t“10085n”;else if (grade= =B) cout“8470n”; else if (grade= =C) cout“6960n”; else if (grade= =D) cout“no passn”; else cout“errorn”; 37void main() char grade; cin.get(grade); switch(grade) case A:cout“10085n”; case B:cout“8470n”; case C:cout“6960n”; case D:cout“no passn”; default:cout“errorn”; 如果如果gra

12、de输入为输入为 A,则运行结果为则运行结果为1008584706960no passerror38其流程为:先计算表达式的值,然后顺序地其流程为:先计算表达式的值,然后顺序地与与case子句中所列出的各个常量进行比较,若子句中所列出的各个常量进行比较,若表达式的值与常量中的值相等,就开始进入表达式的值与常量中的值相等,就开始进入相应的相应的case语句执行程序,语句执行程序,遇到遇到case和和default也不再进行判断,直至也不再进行判断,直至switch语句结束。语句结束。如果如果要使其在执行完相应的语句后中止执行下一要使其在执行完相应的语句后中止执行下一语句,可以在语句后加语句,可以

13、在语句后加break。39switch(grade) case A:cout“10085n”; break; case B:cout“8470n”; break; case C:cout“6960n”; break; case D:cout“no passn”; break; default:cout“errorn”; 40 注意:注意:1、switch与与if不同,它仅能判断一种逻辑关系,即不同,它仅能判断一种逻辑关系,即表达式是否表达式是否等于等于指定的常量,而指定的常量,而 if 可以计算并判断可以计算并判断各种表达式。各种表达式。2、case子句后必须为常量,常常是整型和字符型。子句后

14、必须为常量,常常是整型和字符型。3、default可以省略,这时,不满足条件什么也不可以省略,这时,不满足条件什么也不执行。执行。414、case和和default只起标号的作用,只起标号的作用,顺序可以颠倒顺序可以颠倒,颠倒时注意后面的颠倒时注意后面的break语句。语句。5、多个、多个case语句可以共用一组程序。语句可以共用一组程序。 case A: case B: case C: cout“pass!n”;42void main(void ) int i=10; switch(i) case 9: i+; case 10: i+; case 11: i+; default: i+; c

15、out“i=”iendl; i=11i=12i=13i=1343int x=1, y=0, a=0, b=0;switch( x ) case 1: switch( y ) case 0: a+; break; case 1: b+; break; case 2: a+; b+; break; case 3: a+; b+; cout“a=“at“b=”bb输出输出 aTFP语句语句 1语句语句 246格式格式? : 条件运算符条件运算符 -是是C C中的唯一的三目运算符中的唯一的三目运算符TF表达式表达式1表达式表达式2表达式表达式347例:例:max=ab?a:b ; / 求求a, b中的

16、大者中的大者输入输入 a=2 b=1 ab为真,表达式的值等于为真,表达式的值等于a, 即即max值为值为2输入输入 a=1 b=2 ab为假,表达式的值等于为假,表达式的值等于b, 即即max值为值为248 注意注意:1. 条件运算符条件运算符的优先级比的优先级比赋值运算符赋值运算符高高 ,比逻辑,比逻辑运算符低;运算符低; x=(x=3) ? x+2 : x-32. 结合方向自左至右结合方向自左至右 ab?a:cd?c:d 输入输入a=3,b=4,c=2,d=1; 3. 三个表达式的类型可不同三个表达式的类型可不同 z=ab?A:a+b结果结果 x=5结果结果 249 #include s

17、tdafx.h #include using namespace std; int main() int x,a=3,b=4,c=2,d=1,y,z; x=(x=3)?x+2:x-3; coutx=xb?a:cd?c:d; couty=yb?A:a+b; coutz=z=x%z+y%z)?1:0;coutx= xendl;x=1; y=2; z=3;x+=y+=z;couty?x+:y+)endl;y=y+z=5x=x+5=69x=051void main(void ) int x=1,y=2,z=3; x+=y+=z; coutxy?y:xendl; coutxy?x+:y+endl; co

18、utx“,”yendl; couty?x+:y+endl; couty“,”zendl; x=3; y=z=4; cout=y&y= =x)?1:0endl; cout=y&y=xendl;xyz 输出输出653653666356636,667996797,93443440344152执行以下程序段后,变量执行以下程序段后,变量a,b,c的值分别是:的值分别是:int x=10, y=9;int a,b,c;a=(-x= =y+)?-x:+y;b=x+;c=y;x=8 y=10 a=8b=8 x=9c=1053void main(void ) int a=5,b=1,c=0;

19、if(a=b+c) cout“* * *n”; else cout“$ $ $n”;* * *543. 循环结构 常常遇到需要重复计算的问题常常遇到需要重复计算的问题.C+提供了提供了3种循环种循环1. while 语句语句2. do-while 语句语句3. for 语句语句55格式:格式: whil(条件(条件P)语句)语句 S1) while while 语句语句功能:当功能:当条件条件P成立时,执行循环体成立时,执行循环体语句语句S语句语句STP表达式表达式语句组语句组1T语句组语句组2F56例例1a=3;while(a100) a=a+5;cout“a=“a;a=a+5Ta100a=

20、3输出输出a57void main( ) int i=1,sum=0; /定义变量,初始化定义变量,初始化 while(i=100) /构造循环构造循环 sum=sum+i; / 循环体,多次执行循环体,多次执行 i=i+1; cout“sum=”sumendl; /输出结果输出结果循环条件循环条件初值初值循环次数循环次数1234.99100101sumi0112真真33真真64真真105真真真真100真真101真真5050假假sum50500sum1i1233641005050101循环结束循环结束!实际上是将实际上是将i不停地累加到一起不停地累加到一起例例2 2:求:求 1+2+3+1+2

21、+3+100+10058例例3 3:求:求 n!n! void main( ) int i=1,p=1,n; /定义变量,初始化定义变量,初始化 coutn; while(i=n) /构造循环构造循环 p=p*i; / 循环体循环体 i=i+; cout“p=”pendl; /输出结果输出结果 591、循环体如果为一个以上的语句,用、循环体如果为一个以上的语句,用 括起。括起。2、循环体内或表达式中必须有使循环结束的条、循环体内或表达式中必须有使循环结束的条件,件,即一定有一个循环变量。即一定有一个循环变量。3、while表达式可以成为语句,要特别小心。表达式可以成为语句,要特别小心。注意注意

22、60k=2;while(k!=0) coutk, k-;coutendl;k循环条件循环条件输出输出输出:输出:212真真21真真10假假回车回车练习61void main(void) int num=0; while(num=2) num+; coutnumendl; num循环条件循环条件输出输出1230真真11真真22真真33假假无无62void main(void) int y=10; while (y-); cout“y=”yendl;y条件条件输出输出输出:输出:y=-1输出是什么?输出是什么?循环几次?循环几次?10真真无无9真真无无.真真无无1真真无无0假假1循环:循环:10次

23、次63k=10;while( k=0 ) k=k-1;cout k; k10表达式表达式0输出:输出:064x=10; while (x!=0) x-;x=10; while (x) x-;x=10; while(x-);x=10; while(-x); 以下语句,循环退出时以下语句,循环退出时x为多少?为多少?x=0 x=0 x=-1x=065格式:格式: do whil(条件(条件P)2) do-while while 语句语句功能:先执行循环体功能:先执行循环体语句语句S ,后判断,后判断条件条件P成立成立语句语句STP表达式表达式语句语句S真真语句语句2假假66void main(vo

24、id) int i=1,sum=0; /定义变量,初始化定义变量,初始化 do /构造循环构造循环 sum=sum+i; / 循环体,多次执行循环体,多次执行 i=i+1; while (i=100); cout“sum=”sum0)&(y5);cout“y=“y“,”“x=”xendl;y0 x0条件条件输出:输出:y=1,x=010假假若为若为while循环,则循环,则一次也不执行循环一次也不执行循环体,输出为:体,输出为:y=0, x=0例:例:69s=7;do s-=2;while(s= =0);cout“s=”sendl; 第一次第一次s75表达式表达式F输出:输出:s=5例

25、:例:70格式:格式: for(;) 3) for 语句语句功能:功能: 是对循环变量初始化;是对循环变量初始化; 是循环条件;是循环条件; 是循环变量的增减是循环变量的增减71for(表达式(表达式1;表达式;表达式2;表达式表达式3) 语句体语句体1(循环体循环体)语句组语句组2N表达式表达式2语句体语句体1Y语句组语句组2表达式表达式1表达式表达式3for(循环变量赋初值循环变量赋初值;循环结束条件;循环结束条件;循环变量增值循环变量增值)72void main() int i, sum=0; for (i=1; i=100; i+) sum=sum+i; cout“sum=”sumen

26、dl; void main() int i, sum=0; i=1; while(i=100) sum=sum+i; i=i+1; cout“sum=”sumendl; 例例 求求 1+2+3+1+2+3+100+10073例例 求自然数求自然数100100内的所有偶数之内的所有偶数之和,即计算和,即计算2+4+6+2+4+6+100+100void main() int i, sum=0; for (i=2; i=100; i=i+2) sum=sum+i; cout“100内所有偶数之和为内所有偶数之和为” sumendl; 741、while循环,条件测试是在循环开始时进行,有可能一循环

27、,条件测试是在循环开始时进行,有可能一次也进入不了循环体。次也进入不了循环体。2、for语句中的三个表达式可以部分省略或全部省略,语句中的三个表达式可以部分省略或全部省略,但但”;” 不能省略,不能省略,若省略表达式若省略表达式2,则表示循环条件,则表示循环条件为为真真。3、for语句中三个表达式可以是任何有效的语句中三个表达式可以是任何有效的C语言表达式。语言表达式。注意注意75void main() char i, j ; for (i=a,j=z ; ij ; i+, j-) coutij; coutendl; 次数次数ijij输出输出输出:输出:azbycx.lomnaz真真azby真

28、真bycx真真cx真真.真真.mnmn.nm假假CR76以下循环结果如何?以下循环结果如何?for ( i=0, k= -1; k=1; i+, k+) cout“*n”;以下循环最多执行以下循环最多执行_次,最少执行次,最少执行_次次for (i=0, x=0; ix; 10177 一个循环体内又包含另一个完整的循环体,称为一个循环体内又包含另一个完整的循环体,称为循环的嵌套。循环的嵌套。注意注意:1、循环体内有多个语句要用括起来。、循环体内有多个语句要用括起来。2、书写格式要清晰。、书写格式要清晰。for ( ; ; ) . for ( ; ; ) . 4) 循环的嵌套循环的嵌套78voi

29、d main(void) int i, j, k=0, m=0; for ( i=0; i2; i+) for ( j=0; j3; j+) k+; k- =j; m=i+j; cout“k=“k“, m=“ mendl; ii2jj3k输出:输出:k=0, m=50真真0真真11真真22真真33假假01真真0真真11真真22真真33假假079例例 多重循环的实现,打印九九乘法表多重循环的实现,打印九九乘法表 #include void main( ) int bcs,cs;for (bcs=1; bcs=9; bcs+) /bcs表示行号表示行号for (cs=1; cs=bcs;cs+)

30、/cs 表示列号表示列号coutbcs*cs=bcs*cs ;coutn)1、m被被n除得到余数除得到余数r(0r n) r=m%n2、if r=0,则算法结束,则算法结束,n为最大公约数,否则做为最大公约数,否则做33、mn , nr , 回到回到185求两自然数求两自然数m , n的最大公约数的最大公约数m=6 n=4 r=m%n=6%4=2r=m%n;while ( r!=0 ) m=n; n=r ; r=m%n; m=4 n=2 r=m%n=4%2=0所以,公约数所以,公约数=2while ( r=m%n ) m=n; n=r ; 8612345105 12345/1012341234

31、104 1234/10123123103 123/101212102 12/1011%101 1/100while(n)coutn%10 x; if (x= =123) break; 当输入当输入123时,结束循环。时,结束循环。break 只能退出一层循环或只能退出一层循环或switch语句。语句。90a=10 ; y=0;do a+=2; y+=a; cout“a=“a“, y=“ y50) break; while (a=14);第一次:第一次:a=12 y=12输出:输出:a=12 , y=12第二次:第二次:a=16 y=28输出:输出:a=16 , y=28第三次:第三次:a=16

32、 y=44输出:输出:a=16 , y=44第四次:第四次:a=16 y=60输出:输出:a=16 , y=60这里是赋值这里是赋值91(2)continue:其作用为:其作用为结束本次循环结束本次循环,即跳过循环体中,即跳过循环体中下面尚未执行的语句,下面尚未执行的语句,接着进行下一次是否执行循环的判接着进行下一次是否执行循环的判定定。void main(void) int i; for (i=1 ; i=5 ; i+ ) if (i%2) cout“*”; else continue; cout“#”; cout“ $n”;ii=5i%2输出输出输出:输出:*#*#*#$1真真1*#2真真

33、0无无3真真1*#4真真0无无5真真1*#6假假$92void main(void) int i, j, x=0 ; for (i=0 ; i2; i+) x+; for (j=0;j=3; j+) if ( j%2 ) continue; x+; x+; cout“x=“ xendl; jj%2xi=0 i2 第一次第一次jj%2xi=1 i2 第二次第二次i=2 i2 结束结束输出:输出:x=80假假21真真22假假33真真3440假假61真真62假假73真真74893void main(void ) int k=0; char c=A; do switch (c+) case A: k+

34、; break; case B: k-; case C: k+=2; break; case D: k=k%2; continue; case E: k=k*10; break; default: k=k/3; k+; while (cG); cout“k=” kendl; c+ck输出:输出:k=4A真真B2B真真C4C真真D7D真真E1E真真F11F假假G494例 输出1-20之间的奇数#include void main()int i;for(i=1;i=20;i+) if (i%2 =0) continue; coutit; 95总结:总结:在循环体中,在循环体中,break从循环体内

35、跳出循环体,提前从循环体内跳出循环体,提前结束循环结束循环。for(. ; . ; . ) . break; .96continue:其作用为:其作用为结束本次循环结束本次循环,即跳过循环体,即跳过循环体中下面尚未执行的语句,中下面尚未执行的语句,接着进行下一次是否执行接着进行下一次是否执行循环的判定循环的判定。for(. ; . ; . ) . continue; .while( . ) . continue; .97(3)goto 语句语句:又称转向语句,用于将程序跳:又称转向语句,用于将程序跳转到指定标号语句中。转到指定标号语句中。 格式:goto ;98习题与解答99求素数:只可以被求

36、素数:只可以被1与自身整除的数。与自身整除的数。判断一个数判断一个数 t 是否为素数,用是否为素数,用2到到t-1循环除。循环除。for( i=2; it ; i+) if(t%i=0) break; if (i=t) cout“是素数。是素数。n”;else cout=t/2)100求范围内的素数求范围内的素数(50100):for(t=50, k=0 ; t=100; t+) for( i=2; it ; i+) if(t%i=0) break; if (i= =t) coutt“ “; k+; if(k%5=0) coutendl; 判断判断t是否是否为素数为素数保证每行输保证每行输出出

37、5个数据个数据101鸡兔共有鸡兔共有30只,脚共有只,脚共有90只,问鸡兔各有多少?只,问鸡兔各有多少?void main(void) int i; /i代表鸡,则兔为代表鸡,则兔为30-i只只 for(i=0; i=15; i+) if(2*i + 4*(30-i)= =90) cout“鸡鸡”iendl; cout“兔兔”30-iendl; 102一百万富翁一百万富翁 遇到一陌生人,陌生人找他谈一个换钱遇到一陌生人,陌生人找他谈一个换钱的计划,该计划如下:我每天给你十万元,而你第的计划,该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我仍给你十万元,你一天只需给我一分钱,第二

38、天我仍给你十万元,你给我两分钱,第三天我仍给你十万元,你给我四分给我两分钱,第三天我仍给你十万元,你给我四分钱,钱,.,你每天给我的钱是前一天的两倍,直到满,你每天给我的钱是前一天的两倍,直到满一个月(一个月(30天),百万富翁很高兴,欣然接受了这天),百万富翁很高兴,欣然接受了这个契约。请编写程序计算陌生人给百万富翁多少钱,个契约。请编写程序计算陌生人给百万富翁多少钱,百万富翁给陌生人多少钱?百万富翁给陌生人多少钱?103利用循环语句编程,打印下列图形:利用循环语句编程,打印下列图形: * * * * * * * * * * * * * * * *找规律:找规律: 上面四行上面四行 行号行号

39、空格空格星号星号131222313404 for(i=0;i0;j-)cout ;for(k=1;k=i+1;k+)cout * ;coutendlendl;行号:行号:i空格:空格:4-i星号:星号:i104void main(void)int i,j,k;for(i=0;i0;j-)cout ;for(k=1;k=i+1;k+)cout * ;coutendlendl;for(i=0;i0;j-) cout * ;coutendlendl;105 打印图形:打印图形: * * * * * * * * * * * * * * * * * * * * * * * * 行号行号空格空格星号星号0

40、31123215307行号:行号:i空格:空格:3-i星号:星号:2*i+1如果打印如果打印n行行行号:行号:0n-1空格:空格:0n-1-i106计算:计算:222222.2222222?累加和累加和 s0设通项为设通项为tt的初值为的初值为222=2*10+2; 222=22*10+2; 2222=222*10+2; t=t*10+2; 所以,通项的循环表示为:所以,通项的循环表示为:前一项前一项当前项当前项循环体为:循环体为: s = s +t t=t*10+2; 107void main(void)int t,s;s=0;t=2;for(int i=0;i7;i+)s=s+t;t=t*10+2;coutsendl;108下面程序的功能是用公式求下面程序的功能是用公式求的近似值,直到最后一项的的近似值,直到最后一项的值小于值小于10-6为止。请填空。为止。请填空。22222n13121116void main(void )

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论