C语言学习笔记w2d4

流程控制二

循环语句

循环的开始条件

循环的控制条件

循环的结束条件

goto

无条件跳转,跳转到指定位置执行:标志位置
标志:通常用大写。
例:(SIGN:)注意冒号

while

当条件满足时执行循环体,
while (条件){
循环体
}

练习

1-100累加,和、奇数和、偶数和

#include<stdio.h>
int main(){
	int a=1,i=1;
	for(i=1;i<=100;i++){
		a+=i;
	}
	printf("%d",a);
	a=0;
	for(i=1;i<=100;i++){
		if(i%2==0)
			a+=i;
	}
	printf("%d",a);
	a=0;
	for(i=1;i<=100;i++){
		if((i+1)%2==0)
			a+=i;
	}
	printf("%d",a);
	return 0;
}

在这里插入图片描述

输入一个数,判断这个数是否为质数

do while

先执行循环体,后判断循环条件,满足继续循环,不满足跳出循环
do{
循环体
}while (条件);

for

for(初始化语句 ; 条件执行语句 ; 循环体结束语句){
循环体
}
执行for时,
初始化语句:整个循环只会先执行一次初始化语句
条件执行语句:满足条件进行循环,不满足就结束循环。
循环体结束语句:执行完一次循环体后,会执行循环体结束语句

初始化语句 ; 条件执行语句 ; 循环体结束语句,都可以缺省

break

在循环中若存在break则表示跳出当前循环。与switch中的含义不同

continue

直接开始下一次循环

作业

1、计算1 ^ 2 +2 ^ 2 + 3 ^ 2 + 4 ^ 2 + … + n ^ 2

#include<stdio.h>
int main(){

		int a=0;
		int sum=0;
		int i=0;
		scanf("%d",&a);
		for(i=1;i<=a;i++){
		
				sum+=i*i;
		}
		printf("%d\n",sum);
		return 0;
}

2、输⼊20个学⽣的成绩,输出成绩不及格的⼈数
若仅仅考虑完成“统计不及格人数”的功能,直接循环输入20次,每次输入完成立马判断成绩及格与否,用一变量统计人数即可

#include<stdio.h>
int main(){

		int stu[5];
		int i=0;
		int flag=0;

		for(i=0;i<5;i++){
				scanf("%d",&stu[i]);
		}

		for(i=0;i<5;i++){
			if(stu[i]<60){				
				flag+=1;
			}
		}

		printf("%d\n",flag);
		return 0;
}

3、打印9×9乘法表

#include <stdio.h>
int main(){
	int i,j,k;
	for(i=1;i<=9;i++){
			for(j=1;j<=i;j++){
					k=i*j;
					printf("%d*%d=%2d ",i,j,k);
					}
			printf("\n");
			}
	return 0;
}

4、打印 i⾏ j列的*,如i=4;j=5输出

#include<stdio.h>
int main(){

		int row;
		int col;
		printf("row:   column:\n");
		scanf("%d %d",&row,&col);
		printf("row:%d,column:%d\n",row,col);
		for(int i=1;i<=row;i++){
		
				for(int j=1;j<=col;j++){
				
						printf("*");
				}
				printf("\n");
		}
		return 0;
}

5、猴⼦摘桃n个,第⼀天吃了⼀半加⼀个,第⼆天吃了剩下⼀半加⼀个,以后每天如此,到第⼗天 只剩下⼀个,计算求n

3070第一天:剩1534,第二天:剩766,第三天:剩382,第四天:剩190,第五天:剩94,第六天:剩46,第七天:剩22,第八天:剩10,第九天:剩4,第十天:剩1

#include<stdio.h>
int main(){

		int last=1;
		for(int i=0;i<10;i++){
		
				last=(last+1)*2;
		}
		printf("%d\n",last);
		return 0;
}

6、一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

#include<stdio.h>
int main(){

		double h=100;
		double l=100;
		for(int i=1;i<=10;i++){
		
				
				h=h/2;
				l=l+h*2;
		}
		printf("length:%lf\n",l);
		printf("hight:%lf\n",h);
		

		return 0;
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值