第5章循环程序设计 5.2.2do-while循环 100 例用do-while循环求 main() int i,sum=0: i=1; do sum+=i; t+; }while(i<=100); printf("%d",sum);
第5章 循环程序设计 5.2.2 do-while循环 = 100 n 1 例 用do-while循环求 n main() { int i,sum=0; i=1; do { sum+=i; i++; }while(i<=100); printf("%d",sum); }
第5章 循环程序设计 例5.7从键盘输入两个正整数,求其最大公约数。 概转相除法 欧几里德算法 求两个正整数之最大公因子的算法。 算法设计: (1)两个数中,大数作被除数,小数作除数,相除求余数。 (2)若余数不为零,则上次的除数作被除数,余数作除数,继 最小公倍数 续取余运算。 (3)直到余数为0时,对应的除数就是最大公约数。 if(m<n) {t=m;m=n;n=t;} dof r=m%n; m=n; n=r; }while(r!=0); printf("最大公约数为%d小n",m)i
第5章 循环程序设计 例5.7从键盘输入两个正整数,求其最大公约数。 #include<stdio.h> #include<math.h> #include<stdlib.h> main() { int m,n,t,r; printf("请输入两正整数 m n\n"); scanf("%d%d",&m,&n); if(m<n) {t=m;m=n;n=t;} do{ r=m%n; m=n; n=r; }while(r!=0); printf("最大公约数为%d\n",m); system("pause"); } 辗转相除法 欧几里德算法 求两个正整数之最大公因子的算法。 算法设计: (1)两个数中,大数作被除数,小数作除数,相除求余数。 (2)若余数不为零,则上次的除数作被除数,余数作除数,继 续取余运算。 (3)直到余数为0时,对应的除数就是最大公约数。 最小公倍数
第5章循环程序设计 例5.11输入一个整数,将各位数字反转后输出。 如输入32541,则输出14523。 mainO long n; printf("Enter a number(>=0):"); scanf("%ld",&n); printf("The number in reverse order is ") do printf("%d",n%10); n/=10; }while(n!=0);
例5.11输入一个整数,将各位数字反转后输出。 main() { long n; printf("Enter a number(>=0):"); scanf("%ld",&n); printf("The number in reverse order is "); do { printf("%d",n%10); n/=10; }while(n!=0); } 第5章 循环程序设计 如输入32541,则输出14523