C语言编写程序用printf函数输出6行由“*”组成的如金字塔图形
时间: 2024-09-18 11:18:43 浏览: 90
在C语言中,你可以使用嵌套循环来打印出金字塔形状的字符串。这里是一个简单的例子,它会打印6行由星号(*)组成的基本金字塔:
```c
#include <stdio.h>
int main() {
int rows = 6; // 定义金字塔的行数
for(int i=1; i<=rows; i++) { // 外层循环控制行数
for(int j=1; j<rows-i+1; j++) { // 内层循环控制每行的空格数
// 使用printf输出空格
printf(" ");
}
for(int k=1; k<=i*2-1; k++) { // 内层循环控制每个星号
printf("*"); // 星号的打印
}
printf("\n"); // 换行,开始下一行
}
return 0;
}
```
当你运行这个程序时,它将输出一个6行的金字塔,每一行的星星数量逐渐递增。
相关问题
编写c语言程序,显示如下菜单: 1一输出星号表示的五行金字塔图形 2一输出用ABCD组成的4行金字塔图形 0—退出 根据用户的选择,分别输出。可以重复选择直到输入0结束程序
以下是一个可以实现该功能的 C 语言程序:
```
#include <stdio.h>
void print_pyramid(int rows, char symbol) {
int i, j, k;
for (i = 1; i <= rows; i++) {
for (j = 1; j <= rows - i; j++) {
printf(" ");
}
for (k = 1; k <= 2 * i - 1; k++) {
printf("%c", symbol);
}
printf("\n");
}
}
void print_ABCD_pyramid() {
printf("A\n");
printf("AB\n");
printf("ABC\n");
printf("ABCD\n");
}
int main() {
int choice;
do {
printf("请选择要输出的图形:\n");
printf("1. 输出星号表示的五行金字塔图形\n");
printf("2. 输出用ABCD组成的4行金字塔图形\n");
printf("0. 退出\n");
scanf("%d", &choice);
switch (choice) {
case 1:
print_pyramid(5, '*');
break;
case 2:
print_ABCD_pyramid();
break;
case 0:
printf("程序已退出。\n");
break;
default:
printf("无效的选择,请重新输入。\n");
break;
}
} while (choice != 0);
return 0;
}
```
当用户输入 1 时,程序会调用 `print_pyramid` 函数输出星号表示的五行金字塔图形;当用户输入 2 时,程序会调用 `print_ABCD_pyramid` 函数输出用ABCD组成的4行金字塔图形;当用户输入 0 时,程序会退出。
c语言编写一个子函数生成金字塔图形(使用循环),在主函数中打印出来
在C语言中,你可以通过嵌套循环结构来编写一个函数生成金字塔形的输出。下面是一个简单的例子,这个函数`print_pyramid(n)`用于打印高度为n的金字塔:
```c
#include <stdio.h>
// 定义生成金字塔的子函数
void print_row(int n) {
// 从上到下打印空格
for (int i = 0; i < n - 1; ++i)
printf(" ");
// 打印星号作为顶部的三角形
for (int j = 0; j <= n; ++j)
printf("*");
printf("\n"); // 换行
}
// 主函数打印整个金字塔
void print_pyramid(int n) {
for (int i = 0; i < n; ++i) {
print_row(i + 1); // 递增1是因为顶层需要1个星号
}
}
int main() {
int height; // 输入金字塔的高度
printf("请输入金字塔的高度: ");
scanf("%d", &height);
print_pyramid(height);
return 0;
}
```
在这个程序中,`print_row()`函数负责打印每一行,而`print_pyramid()`则通过迭代`n`次,每次递增1层来构建整个金字塔。
阅读全文