巧用函数调用,打印不同行数和字符构成的等腰三角形。具体要求:用c语言 定义一个函数原型void DrawTriangle(int n,char c),实现功能为打印一个n行的由字符c组成的等腰三角形。主程序调用该函数,实现打印5行*、10行#构成的等腰三角形。
时间: 2024-11-23 13:40:22 浏览: 36
首先,我们需要定义一个名为`DrawTriangle`的函数,这个函数接受两个参数:行数`n`和字符`c`。接下来,我们将编写函数的实现以及主程序来满足您的需求。
```c
#include <stdio.h>
// 函数声明
void DrawTriangle(int n, char c);
// 函数实现,用于打印等腰三角形
void DrawTriangle(int n, char c) {
for (int i = 1; i <= n; i++) {
// 计算当前行的空格数和字符数
int spaces = n - i;
int stars = 2 * i - 1;
// 输出空格和字符
for (int j = 0; j < spaces; j++) {
printf(" ");
}
for (int k = 0; k < stars; k++) {
printf("%c", c);
}
// 当前行结束后换行
if (i != n) {
printf("\n");
}
}
}
int main() {
// 主程序调用函数,分别打印5行*和10行#
DrawTriangle(5, '*');
printf("\n");
DrawTriangle(10, '#');
return 0;
}
```
在这个程序中,`DrawTriangle`函数通过嵌套循环实现等腰三角形的绘制。外部循环控制每一行,内部循环负责输出指定数量的字符。当i不是最大行数时,还会添加空格以保持等腰形状。
当你运行此程序,将会得到期望的结果:5行星号(*)和10行井号(#)组成的等腰三角形。
阅读全文