c语言用递归函数输出菱形
时间: 2023-10-13 21:06:45 浏览: 125
好的,我来为您解答。下面是 C 语言递归函数输出菱形的代码:
```
#include <stdio.h>
void print_lines(int n, int i) {
if (i == n+1) return; // 递归退出条件
int j;
for (j = 1; j <= n - i + 1; j++) printf(" "); // 输出空格
for (j = 1; j <= 2*i-1; j++) printf("*"); // 输出星号
printf("\n"); // 换行
print_lines(n, i+1); // 递归调用
for (j = 1; j <= n - i + 1; j++) printf(" "); // 输出空格
for (j = 1; j <= 2*i-1; j++) printf("*"); // 输出星号
printf("\n"); // 换行
}
void rhombus(int n) {
int i;
for (i = 1; i <= n; i++) {
print_lines(n, i);
}
for (i = n-1; i >= 1; i--) {
print_lines(n, i);
}
}
int main() {
int n;
printf("请输入菱形的行数:");
scanf("%d", &n);
rhombus(n);
return 0;
}
```
希望能对您有所帮助!同时,您还有其他问题吗?
阅读全文