首页 > 其他分享 >【C语言】j<=9和j<=n的区别

【C语言】j<=9和j<=n的区别

时间:2023-10-22 18:32:52浏览次数:33  
标签:九九乘法 区别 变换 领悟 学习 第四行 C语言 运行

一起学习,一起进步@放纵lili

以下都是我自己学习过程的领悟:想出讲这一点,是因为我在学习过程中遇到了这个问题,但无处求解,之后自己给领悟了,就想分享出来。

为了讲得更清楚一点,我以一个编程 “九九乘法表为例”,来讲解其中的j<=9和j<=n的区别,同时也会增强我们对于循环的理解。

一、首先先看j<=9。

第二个for循环里的j<=9

【C语言】j<=9和j<=n的区别_for循环

再来给出运行结果:

【C语言】j<=9和j<=n的区别_for循环_02

可以看出除了第一行外,每一行都多出了几组数:

第二行:1*2=2;第三行:1*3=3,2*3=6;第四行..............

二、下面再看j<=n。

同样是第二个for循环里的j<=n

【C语言】j<=9和j<=n的区别_for循环_03

我们再来看看运行结果。

【C语言】j<=9和j<=n的区别_for循环_04

此时运行出的程序是正确的九九乘法表。

三、分析。

       我先按照j<=9来解读一下程序,在这个程序中i控制行,j控制列。当i每取一个值时,j都会从1变到九,这样就会导致很多组数重复出现。而实际上我们只需要到 “i*i=” 结束。

      这样我们就可以想到解决方法是将 j变换到和i同等大小时,便将其停止变换。所以就只需“j<=n”就可以了。






标签:九九乘法,区别,变换,领悟,学习,第四行,C语言,运行
From: https://blog.51cto.com/u_16292324/7978121

相关文章

  • 实验2_C语言分枝与循环基础应用编程
    试验任务1task1.c#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN5#defineN1374#defineN2465intmain(){intnumber;inti;srand(time(0));for(i=0;i<N;++i){number=r......
  • c语言训练1
    #加法输入两个数字,输入的两个数用空格隔开,输出两个数字的和#include<stdio.h>#include<stdlib.h>#include<math.h>intmain(){  inta,b;  scanf("%d%d",&a,&b);  printf("%d",a+b);  return0;}......
  • c语言训练2
    #a+b=c输入两个数据a,b,计算它们的和并以a+b=c的形式输出(输入的两个数据用空格隔开)例如:输入:23输出:2+3=5#include<stdio.h>#include<stdlib.h>intmain(){  inta,b,c;  scanf("%d%d",&a,&b);  c=a+b;  printf("%d+%d=%d",a,b,c);  return0;}......
  • c语言训练3
    #正向输入,方向输出输入a,b,c,反向以c,b,a的形式输出例如:输入:123输出:321#include<stdio.h>#include<stdlib.h>intmain(){  inta,b,c;  scanf("%d%d%d",&a,&b,&c);  printf("%d%d%d",c,b,a);  return0;}大家注意输出时要用空格隔开......
  • c语言程序设计全局变量与局部变量
    //运用scanf时要用#define_CRT_SECURE_NO_WARNINGS#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>intnum1=5;//全局变量intmain(){ //未声明的标识符 //声明extern外部符号的 externintg_val; printf("g_val=%d\n",g_val); intnum1=10;//局部变量 //局......
  • 嵌入式刷题(day2 new delete 和malloc free的区别)
    (文章目录)前言本篇文章我们来讲解一下newdelete和mallocfree的区别,这个区别在许多面试题中也会经常问到,那么我们就具体的来看看他们有什么不同吧。一、区别new和delete是C++中的运算符,用于动态分配和释放内存空间,而malloc和free是C语言中的函数,用于同样的目的......
  • c语言初学笔记3
    这几天整理的比较慢,因为有一些是之前的东西在这里做再次批注和解释,更加详细一点intMax(intx,inty){ if(x>y) returnx; else returny;}intmain(){ intnum1=10; intnum2=20; intmax=0; max=Max(num1,num2); printf("max=%d\n",max); return0;}上来就是......
  • centos7和centos8的区别
      网络管理centos7云主机:centos7使用network管理网络,NetworkManager默认是关闭的自己安装的centos7mini版:两个都是开启的 centos8centos8没有network,使用NetworkManager管理网络修改ip地址等操作之后,使用systemctlrestartNetworkManager重启网络服务 yum和dnfcentos......
  • computed和watch之前的区别
    1、computed依赖同步数据的变化,处于生命周期的创建阶段以及更新阶段,一般如果依赖的data不变的话,则通常不会重新计算,所以一般在创建阶段,如果依赖data是变化的,则处于更新阶段,computed的值会默认走缓存,计算属性基于它们的响应式依赖进行缓存,基于data声明过或者父组件传过来的props数......
  • 实验2 C语言分支与循环基础应用编程
    实验任务1#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN5#defineN1374#defineN2465intmain(){intnumber;inti;srand(time(0));for(i=0;i<N;++i){number=rand()%(N2-N1+1)+N1;pr......