动手学习C语言-S6循环控制结构


主体为:循环控制判断表达式;循环体语句;循环控制变量

基本循环控制结构

while循环结构

while(表达式){循环体} 没有分号;
// while()循环控制结构和getchar()函数组合,实现统计各类字符算法操作;
while((c=getchar())!=’\n’){…}
//判断输入字符
//统计从键盘输入字符串中的数字个数,字母的个数和其他字符个数

#include "stdio.h"
void main(){
	int num=0;
	int cha=0;
	int oth=0;
	char c ;
	
	char str[]="输入键盘控制符";
	puts(str);
	
	c=getchar();
	while(c!='\n'){
		if(c>='0' && c<='9'){
			num++;
		}
		else if(c>='A' && c<='z'){
			cha++;
		}
		else{
			oth++;
		
		}
	c=getchar();
	}
	printf("the num is %d \n",num);
	printf("the cha is %d \n",cha);
	printf("the oth is %d \n",oth);
}

// 永久循环 :while(1)

do {} while(判断表达式)

掌握while结构就足够了,多了影响使用表达;
// 计算三角函数 多项式近似 计算;

for()循环结构

结构:for(int j=0;j<<length;j++){循环体}
// 控制每行输出

#include "stdio.h"
void main(){
	
	for(int i=1;i<=length;i++){
		printf("%-5d",i);
		if(n%6==0){      // 控制每行输出字符
			printf("\n");		
		}
	}
}

循环控制结构嵌套

可以互相嵌套;基本用的最多的就是二层循环嵌套
// 典型例题:控制行列

#include <stdio.h>
#define N 5
void main(){
	for(int i=0;i<N;i++){
		for(int j=0;j<i;j++){
			printf("*");
		}
	printf("\n");
	}
}

两层嵌套循环-但有两个平行第二层循环

// 打印等腰三角形
#include"stdio.h"
void main(){
	for(int i=1;i<=6;i++){          //外层循环控制行数
		for(int k=1;k<=10-i;k++){    // 中层循环控制每行起始位置
			printf(" ")
		}
		for(int j=1;j<=2*i-1;j++){  //  中层循环控制字符个数
			printf("%c",48+i);  // 打印数字-参照数字"1"的ASC码值为48
		}
	printf("\n");
	}
}

基本上外层控制循环的变量与内层控制循环变量有关系

终止循环break语句;终止本次循环continue语句;

// 打印输出九九乘法表
// 知识点:循环控制结构

#include "stdio.h"
void main(){
	int i=0,j=0;

	for(i=1;i<10;i++){
		for(j=1;j<=i;j++){
			printf("%d*%d=%-5d ",i,j,j*j);
		}
		printf("\n");
	}

}

// 输出1-100所有能被3和被7整除的数,并求其和;

#include "stdio.h"
// 能被3和7整除

#include"stdio.h"
void main(){
	int i=0;
	int sum=0;

	for(i=1;i<101;i++){
		if(i%3==0 && i%7 ==0){
			printf("%-3d",i);
			sum =sum+i;
			continue;// 有没有都无所谓在本题来说
		}	
	}
	printf("\n");
	printf("the sum is %d \n",sum);
}

小程序写得多了,思路才能跟得上来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值