持续更新!!!
1.刷题链接和地址:
菜鸟教程C语言专栏这里的"C经典100例"(看红色框框)
2.解题:
2.1读题:
题目呢,就是输出99乘法表,就是1*1 = 1 2*1 = 2,然后一直到9*9,也是很简单的一道题目
这个就是输出的结果样式
2.2解题思路:
首先呢,我们是不是应该考虑先把第一行打印出来,第一行就是1*1 =1,然后第二行就变成2*1=2,
2*2 =4,第二行变成了两个式子,第三行就变成了三个式子,一直到第九行变成了九个式子,所以你想想,是不是第一行执行一次就该打印换行符号了printf("\n"),第二行执行两次才换行,第三行三次,第九行九次。
所以是不是第一行应该for循环执行一次就好了,然后第二次循环执行两次,第九行循环执行九次,循环的次数在不断的加一递增
#include <stdio.h>
int main()
{
int j = 1;
for(int i = 1;i<=j;i++)
{
printf("%d*%d=%d\n",j,i,i*j);
}
}
这个代码是循环执行一次,因为j我赋了一个初始值1,然后i也是1,所以for循环执行一次,那怎么让循环第一次执行一次,第二次执行两次,第三次执行三次呢?是不是我改变j的值,我让j每跳出一次for循环(判断到不满足条件打破,这里的意思是for执行到判断不了了跳出for循环),j就加1,因此我们只需要再套个for循环就可以实现了。
#include <stdio.h>
int main()
{
for(int j = 1;j<=9;j++)
{
for(int i = 1;i<=j;i++)
{
printf("%d*%d=%d ",j,i,i*j);
}
printf("\n");//换行
}
}
所以代码就是这个样子,里面for循环每被打破一次,j就会加1,然后下一次里面的for循环执行次数也会加1。
下面printf("\n")是里面for循环每打破一次,就该换行了。
看了这么久希望你能学到东西,非常感谢你能不厌其烦看到这里,谢谢大家!
标签:第一行,int,一次,第八,C语言,循环,第二行,100,执行 From: https://blog.csdn.net/m0_74458285/article/details/142927134