C语言学习的心得体会--循环语句

结语里有所有演示代码合集。

while函数

形如上:

while函数的使用

while后面()里是判断条件:

先判断,再执行

控制变量是否进入循环中,满足条件才可以进入,反之出来。

如例题

i初始化为0;判断条件是,i<=50;符合条入。

先执行打印 的函数,再给 i 加一。

执行完所有内容后,再次回到判断条件,再次判断,是否进入while函数。

while函数与if函数的结合

选择打印

这里进入while语句中,执行内容中,包括一个 if 语句。

先记入 if 语句的判断,符合条件进入。

如例题:

只会在0~50中打印5的倍数的数字。

注意:循环语句中,必须要有出循环的条件,否则会陷入死循环,导致代码错误。

(入本题,如果不加入i++;则会无法出循环。)

求最值

进入循环后,先输入数值。然后 if 语句会判断大小。

并把比初始最大值还大的值,赋给max;

并把比初始最小值还小的值,赋给min;

与数组结合

会像这样,从两边逐个打印出来:Hello World。

这里的strlen函数是计算数组总长度,减一是因为数组下标是从0开始的。

Sleep函数效果是使显示结果,以每一秒出一次的频率显示,便于观察函数的动态变化。

do...while函数

形如上:

do...while语句和while语句使用方法类似。

先执行,后判断

一般我们选用while语句,很少使用do..while。此处只做认识,不做详细说明。

for函数

使用最广泛的循环函数

for函数的使用

形如上:

for(变量起始值;判断条件;每次循环变量的变换形式)

{

函数内容;

}

相当于while函数的括号里多了两个东西。将变量初始值和变量改变形式放在一起。

优点:便于观察变量情况,位置集中。便于修改,调整。

for函数的嵌套,乘法表的生成

       for函数可以套用。同理:if函数;while函数;do...while函数;等等都可以套用。但是需要理清思路,否则套用会很痛苦。

形如上:

外层for函数,控制总共有几行。

内层for函数,控制总共有几列。

注意:内层函数的判断条件是(q<=i)。观察乘法表可知,i 为几时,就有几列,故,这里判断条件不再是单一与常数判断。而是与变量判断!

乘法表的形式变换

形如上:

这里就多了打空格的步骤。我选用while发空格。

事先数好空格数量。可以在草纸上理清逻辑,在写代码。

结语

有愿意讨论的,欢迎私信我。

C语言是有趣的,严谨的。希望遇到志同道合的朋友,一同前行!

int main()
{
	int i = 0;
	do
	{
		printf("%d ", i);
		i++;
	} while (i <= 50);
	return 0;
}

int main()
{
	int i = 0;
	int n = 0;
	int max = 0;
	int min = 0;
	while (i <4)
	{
		scanf("%d", &n);
		if (n>max)
		{
			max = n;
		}
		if (n < min)
		{
			min = n;
		}
		i++;
	}
	printf("max=%d\n", max);
	printf("min=%d\n", min);
	return 0;
}

int main()
{
	char arr1[] = "Hello World";
	char arr2[] = "###########";
	int lift = 0;
	int right = strlen(arr2) - 1;
	while (lift <= right)
	{
		arr2[lift] = arr1[lift];
		arr2[right] = arr1[right];
		printf("%s\n", arr2);
		Sleep(1000);
		system("cls");
		lift++;
		right--;
	}
	printf("%s\n", arr2);
	return 0;
}

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

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

int main()
{
	int i = 0;int m = 8;int q = 0;
	int n = 0;int w = 0;
	scanf("%d", &n);
	for (i = 1; i <= n; i++)
	{
		w = 0;
		while (w < (7 * m))
		{
			printf(" ");
			w++;
		}
		m--;
		for (q = i; q > 0; q--)
		{
			printf("%2d=%d*%d ", q * i, i, q);
		}
		printf("\n");
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值