小言_互联网的博客

《看聊天记录都学不会C语言?太菜了吧》(13)(9*9 乘法表)寻找电脑中的盲盒彩蛋

437人阅读  评论(0)

本系列文章将会以通俗易懂的对话方式进行教学,对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新,包括别的语言以及实战都将使用对话的方式进行教学,基础编程语言教学适用于零基础小白,之后实战课程也将会逐步更新。

若有想学习的内容可以在评论区留言,根据大家的要求持续更新。点赞过十万就算化成灰我也更新下一篇。(肯定不到,也会更的。)

有问题也可以在评论区留言,也可以私聊我加我好友共同交流一起进步~

喜欢内容欢迎关注我、评论、点赞、收藏,这对我很重要,谢谢~


由于部分粉丝要求想要学python,就更了这个系列,我就算是生产队的驴、化成灰我C语言和python都一周6篇打底。可以关注我加我好友提你们想学的内容哟~

我的其它教程

教程点击进去将会有目录

《看聊天记录都学不会Python到游戏实战?太菜了吧》(1)加载Python神器!亮剑!


目录

你去约个会,你零基础的同学就学完C语言知识点过完了

【小白进】大佬们学习为什么简单?小白该如何学习?学历不高如何找工作?副业很好赚?了解后少走弯路

《看聊天记录都学不会C语言?太菜了吧(1)我在大佬群里问基础问题没人理?——学习建议

《看聊天记录都学不会C语言?太菜了吧(2)我说编程很容易你们不服?——Devc使用及HelloWorld

《看聊天记录都学不会C语言?太菜了吧(3)代码都在谈恋爱难道你不知道?——头文件及标点

《看聊天记录都学不会C语言?太菜了吧(4)原来我早就会编程了——变量

《看聊天记录都学不会C语言?太菜了吧(5)打了一把游戏我学会了一个编程知识?——变量输出及占位符

《看聊天记录都学不会C语言?太菜了吧(6)以前跟我说编程很难的给我站出来——浮点数及变量运算

《看聊天记录都学不会C语言?太菜了吧(7)下一篇文章告诉你牛郎是谁——if逻辑判断

《看聊天记录都学不会C语言?太菜了吧》(8)牛郎和织女竟有一个孩子?——多条件if

《看聊天记录都学不会C语言?太菜了吧》(9)老公饼真的有老公送?——字符数组

《看聊天记录都学不会C语言?太菜了吧》(10)程序媛聪明绝顶了——逻辑与运算符

《看聊天记录都学不会C语言?太菜了吧》(11)2分钟领悟数组——数组

《看聊天记录都学不会C语言?太菜了吧》(12)循环有多容易?你看一眼就怀…——循环

《看聊天记录都学不会C语言?太菜了吧》(13)(9*9 乘法表)寻找电脑中的盲盒彩蛋——for 循环与循环嵌套 九九乘法表


作者简介

作者名:1_bit
简介:CSDN博客专家,2020年博客之星TOP5,蓝桥签约作者
博客地址:https://i1bit.blog.csdn.net


🐰小C:小媛,觉得循环简单吧?

👸小媛:是呀,难道很难吗?

🐰小C:那我们接下来就玩一个好玩一点的循环吧。

👸小媛:我眉头自然的一皱,觉得事情并没有那么简单。 😱

🐰小C:哈哈哈,我们先学一个叫做 for 的循环,跟while 一样,非常简单,我给你看一串代码。

#include<stdio.h>
void main(){
   
	char a[]={
   'h','e','l','l','o'};
	
	int i;
	for(i=0;i<10;i++){
   
		printf("%c\n",a[i]);
	}
}

🐰小C:上面这一串代码跟上一节类似,只是变量 i 没有赋值,并且 while 循环换成了 for 循环。

👸小媛:那个括号里面是不是条件?好像跟判断一样,关键字后的圆括号基本上都是条件,while 循环也是这样的。

🐰小C:是的,看来你观察的挺好的。在 for 循环后的圆括号中,i=0其实是给变量i一个开始的值,然后用分号隔开,在这里 i=0 在for循环开始后只会执行一次,随后 i<10 才是这个for循环的条件,随后又使用分号隔开,最后的 i++就是表示每次循环这个i变量就会加 1。这样就可以控制这个循环内容了。

👸小媛:意思就是这个for循环就把这些条件,控制都放到了圆括号中吧?这样挺方便的,还有一个问题,是不是圆括号中的 i=0 只会运行一次,而后的 i<10 以及 i++ 每次循环都会进行?

🐰小C:是的,这个你理解了就好办了,这就是for 循环,简单吧。

👸小媛:哈哈哈,不错不错,我运行后显示出来了。 😂

🐰小C:你要不把循环次数改一下,变成10次试一下?

👸小媛:这样?

#include<stdio.h>
void main(){
   
	char a[]={
   'h','e','l','l','o'};
	
	int i;
	for(i=0;i<10;i++){
   
		printf("%c\n",a[i]);
	}
}

👸小媛:这样不就没有内容了还能循环?

🐰小C:当然,你先试一下。

👸小媛:怎么出现了其它的字符?这个数组不是没有了吗?

🐰小C:哈哈哈,其实是这样的,在计算机中,这些变量会存储在一个地址中;数组在我们计算机中内存中是连续存放的,循环数组的时候就会沿着数组最开始的变量依次往下找值,如果你设置循环过头了也会找到对应的值,但是这些值是原本存储在这个内存地址中的值,所以就显示出来了。

👸小媛:哈哈哈,原来这么回事,如果内存中没有存值,那是不是就是没有不显示了? 😅

🐰小C:并不会哟,其实存的值你删掉后,还是原来的值,只是在计算机中标识了这个内存,或者说这个空间已经没人使用了,以后你用就直接用里面的东西不用管了。

👸小媛:懂了懂了,那你说的很难的东西就这样?那不就是洒洒水就理解了吗?
😂

🐰小C:哈哈哈,那我们就正式开始吧。

👸小媛:emmmmm…嘤嘤嘤…

🐰小C:我想告诉你的是我们的循环是可以嵌套的?

👸小媛:循环里面在弄个循环吗?

🐰小C:是的,我给你看一个例子。

#include<stdio.h>
void main(){
   
	char a[]={
   'h','e','l','l','o'};
	
	int i,j;
	for(i=1;i<10;i++){
   
		for(j=1;j<i+1;j++){
   
			printf("%d * %d = %d ",i,j,i*j);
		}
		printf("\n");
	}
}

🐰小C:结果在下面。

👸小媛:没必要搞那么难吧?我都懵圈了。 😱

🐰小C:哈哈哈,你不要怕难,怕了就输了,其实一步步来很简单的,难道我骗过你?

👸小媛:嘤嘤嘤…那你说。

🐰小C:我们看看第一个循环,单独剥出来是这样的。

for(i=1;i<10;i++){
   

	}

🐰小C:这样你懂吗?

👸小媛:懂呀,那不就是循环十次吗?

🐰小C:那这样呢?

for(i=1;i<10;i++){
   
	for(j=1;j<i+1;j++){
   

	}
}

princess:小媛:嗯…主要是里面的 j<i+1 我不理解,我觉得是不是外面循环变量 i 是 1的时候,里面的条件就是 j<1+1? 😂

🐰小C:是的,你继续,把你想要说的说出来。

princess:小媛:那你可别笑我,我继续说…那么这个时候里面的 j 第一次的时候为 1,那么就是 1<1+1?里面就会循环一次?是这个意思吧?因为 1<2 ,第二次 1 等于 2 了所以就不会循环了,所以这个时候里面的循环执行完毕,外面的循环就接着循环第二次?

🐰小C:嗯,很不错,那第二次呢?

princess:小媛:第二次外面的循环变量 i 等于 2,里面的循环就等于又重头开始,j 又变成 1,这个时候里面的循环就是 1<2+1 那就是会循环2次,知道里面的 j 等于3时就不循环了,因为 j 每次会加一?

🐰小C:嗯,那我吧代码添加完整,你给我复述一下刚刚你说的内容。

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

princess:小媛:好像懂了…第一次的时候外面的循环 i 的值是1,而里面循环的条件是 j<i+1,内循环就会循环一次,因为第二次就是2了,条件不对就跳出了。那么就会显示出 1 * 1=1,然后跳出这个循环,然后使用 printf 进行换行,接下来下次输出就会换到下面一行输出;接下来第二次循环外面的 i 就是2了,但是里面for 循环的j 每次循环开始的时候 都会执行 j=1,所以此时 j 又等于了 1,这个时候就会循环2次,那就是第一次会显示 2 * 1=2,接着里面的循环条件还是对的,继续往下循环,那么就是显示 2*2=4,此时内循环条件不成立了就不循环了,就又换行,这样就成了九九乘法表?

🐰小C:哈哈哈,那还难吗?

princess:小媛:不难了耶,感觉慢慢来就可以理解了,哈哈哈、

🐰小C:你消化消化,等下我们继续。

princess:小媛:哈哈哈,是需要慢慢消化一下了。 😭


转载:https://blog.csdn.net/A757291228/article/details/115315176
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场