WHCSRL 技术网

C语言:九九乘法表

问题:使用嵌套 for 循环输出九九乘法口诀表。

代码:

#include<stdio.h> 

int main(){  
//外层循环变量,控制行  
int i = 0;  
//内层循环变量,控制列   
int j = 0;   
for(i=1;i<=9;i++){  
    for(j=1;j<=i;j++){  
        printf("%%dx%%d=%%d	",j,i,i*j);  
    }  
    //每行输出完后换行   
    printf("
");     
}  
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

运行结果:

1x1=1    
1x2=2    2x2=4    
1x3=3    2x3=6    3x3=9    
1x4=4    2x4=8    3x4=12    4x4=16    
1x5=5    2x5=10    3x5=15    4x5=20    5x5=25    
1x6=6    2x6=12    3x6=18    4x6=24    5x6=30    6x6=36    
1x7=7    2x7=14    3x7=21    4x7=28    5x7=35    6x7=42    7x7=49    
1x8=8    2x8=16    3x8=24    4x8=32    5x8=40    6x8=48    7x8=56    8x8=64    
1x9=9    2x9=18    3x9=27    4x9=36    5x9=45    6x9=54    7x9=63    8x9=72    9x9=81    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

乘法口决表递归实现方式:

#include <stdio.h>

void func(int i, int j)
{
if(i>j)
    return;
printf("%%dx%%d=%%d	", i, j, i*j);
func(i+1, j);
}

void f(int n)
{
if(n==1)
    printf("1x1=1
");
else
{
    f(n-1);
    func(1, n);
    putchar('
');
}
}


int main()
{
f(9);
return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
推荐阅读