用c语言写一个用到递归的九九乘法表
时间: 2023-05-23 15:06:07 浏览: 100
#include <stdio.h>
void multiplicationTable(int i, int j) {
if (j > 9) {
return;
}
printf("%d * %d = %d\n", i, j, i*j);
multiplicationTable(i, j+1);
}
void main() {
int i;
printf("Please enter the number between 1-9: ");
scanf("%d", &i);
multiplicationTable(i, 1);
}
相关问题
用c语言写一个用到递归的九九乘法表,并且答应出他们
### 回答1:
A:
```
#include <stdio.h>
void printTable(int x, int y) {
if (x > 9) {
return;
}
if (y > 9) {
printf("\n");
printTable(x + 1, 1);
return;
}
printf("%d * %d = %d\t", x, y, x*y);
printTable(x, y+1);
}
int main() {
printTable(1, 1);
return 0;
}
```
运行结果:
1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 1 * 4 = 4 1 * 5 = 5 1 * 6 = 6 1 * 7 = 7 1 * 8 = 8 1 * 9 = 9
2 * 1 = 2 2 * 2 = 4 2 * 3 = 6 2 * 4 = 8 2 * 5 = 10 2 * 6 = 12 2 * 7 = 14 2 * 8 = 16 2 * 9 = 18
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 3 * 4 = 12 3 * 5 = 15 3 * 6 = 18 3 * 7 = 21 3 * 8 = 24 3 * 9 = 27
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 4 * 5 = 20 4 * 6 = 24 4 * 7 = 28 4 * 8 = 32 4 * 9 = 36
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25 5 * 6 = 30 5 * 7 = 35 5 * 8 = 40 5 * 9 = 45
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36 6 * 7 = 42 6 * 8 = 48 6 * 9 = 54
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49 7 * 8 = 56 7 * 9 = 63
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64 8 * 9 = 72
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
```
### 回答2:
以下是使用C语言编写的递归九九乘法表的代码,并打印出结果:
```c
#include <stdio.h>
void multiplicationTable(int i, int j) {
if (i < 10) {
if (j < 10) {
printf("%d * %d = %d\n", i, j, i * j);
multiplicationTable(i, j + 1);
}
else {
multiplicationTable(i + 1, 1);
}
}
}
int main() {
multiplicationTable(1, 1);
return 0;
}
```
代码中的`multiplicationTable`函数使用两个参数`i`和`j`表示乘法表的行和列。递归函数首先检查行数`i`是否小于10,如果是,则继续检查列数`j`是否小于10。如果是,则打印乘法表达式和结果,并递归调用函数`multiplicationTable`传入下一列的值`j+1`。如果列数`j`已经达到10,则递归调用函数`multiplicationTable`传入下一行的值`i+1`。
在`main`函数中,我们调用`multiplicationTable`函数初始时传入1作为行和列的起始值,从而打印出完整的九九乘法表。
经过运行这段代码,将会得到九九乘法表的结果如下:
```
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
...
9 * 8 = 72
9 * 9 = 81
```
九九乘法表中的所有表达式和结果皆会被打印出来。
### 回答3:
下面是使用 C 语言编写的一个使用递归方法打印九九乘法表的示例代码:
```c
#include <stdio.h>
void multiplicationTable(int i, int j) {
if (i > 9) {
return;
}
printf("%d * %d = %d\n", i, j, i * j);
if (j >= i) {
multiplicationTable(i + 1, 1);
} else {
multiplicationTable(i, j + 1);
}
}
int main() {
multiplicationTable(1, 1);
return 0;
}
```
该程序通过递归的方式打印出九九乘法表。`multiplicationTable` 函数接收两个参数 `i` 和 `j`,分别表示当前计算的行和列。首先判断行数是否已经大于9,如果是则结束递归。然后打印当前行和列的乘积,并根据列数的大小决定下一个计算的位置。如果列数大于等于行数,则进入下一行的第一列;如果列数小于行数,则进入下一列。最后在 `main` 函数中调用 `multiplicationTable` 函数开始计算和打印九九乘法表。
执行这段代码,即可输出九九乘法表的计算结果,每行一个式子。
阅读全文