电子说
Hi!这里是渔火。今天我们来讲用while语句和do-while语句实现循环结构。
在C语言中,使用while语句完成不定次数的循环,如果满足循环条件,则反复执行循环体语句,当循环条件不满足时退出循环。while语句在使用时,总是先要判断一个条件,使用可以用while语句实现“当型”循环。while语句的一般形式如下:while(表达式)循环体;。接下来我们来看一个例子。
【由键盘输入一串字符,分别统计输入字符中数字字符、字母字符以及其他字符的个数。】
#include运行结果如下://随便输入字母字符数字//2023.2.5渔火 Linux迷 www.linuxmi.com int main() { int d,l,o; char ch; d=l=o=0; printf("请输入一串字符:"); while((ch=getchar())!=' ') if((ch>='0')&&(ch<='9')) d++; else if ((ch>='a')&&(ch<='z')||(ch>='A')&&(ch<='Z')) l++; else o++; printf("数字%d个,字母%d个,其他%d个 ",d,l,o); //2023.2.5渔火 Linux迷 www.linuxmi.com return 0; }

【求自然数的最大公约数和最小公倍数】
#include//2023.2.5渔火 Linux迷 www.linuxmi.com int main() { int a,b,r,n,m; printf("请输入两个整数:"); scanf("%d%d",&a,&b); m=a,n=b; do { r=a%b; a=b; b=r; } while(r!=0); printf("%d和%d的最大公约数是:%d ",m,n,a); printf("最小公倍数是:%d",m*n/a); //2023.2.5渔火 Linux迷 www.linuxmi.com return 0; }

【输入一个整数,统计该数的位数】
#include运行结果如下://输入1235698//2023.2.5渔火 Linux迷 www.linuxmi.com int main() { long n,m; int count=0; printf("请输入一个整数:"); scanf("%ld",&n); m=n; if(n<0)n=-m; do{ n=n/10; count++; } while(n!=0); printf("整数%ld有%d位数 ",m,count); //2023.2.5渔火 Linux迷 www.linuxmi.com return 0; }
许多时候当循环结构中出现多个循环条件时,要求当某个条件满足时会立即结束循环,或者循环结构中根据条件会跳过某些语句继续循环,这就要在循环结构中配合使用break语句和continue语句。【把1~100之间能被7整除的数,以每行5个的形式在屏幕上输出。】
#include//2023.2.5渔火 Linux迷 www.linuxmi.com int main() { int i,n=1; for(i=1;i<=100;i++) { if(i%7!=0) continue; printf("%4d",i); if(n++%5==0)printf(" "); } //2023.2.5渔火 Linux迷 www.linuxmi.com return 0; }

审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !