码
#include<stdio.h>
int main()
{
int n,m;
scanf("%d\n",&n);
for(int i=1;i<=n;i++){
for(int k=1;k<=n-i;k++){
printf(" ");}
for(int k=1;k<=2i-1;k++)
printf("");
printf("\n");}
for(int b=1;b<n;b++){
for(int h=0;h<=b-1;h++){
printf(" ");}
for(int g=b;g<=2n-b-2;g++){
printf("");}
printf("\n");
printf("\n");}
2<=m&&m>=9;
scanf("%d",&m);
for(int i=1;i<=m;i++){
for(int k=1;k<=m-i;k++){
printf(" ");}
for(int k=1;k<=2i-1;k++)
printf("");
printf("\n");}
for(int b=1;b<m;b++){
for(int h=0;h<=b-1;h++){
printf(" ");}
for(int g=b;g<=2m-b-2;g++){
printf("");}
printf("\n");}
return 0;
}
#include<stdio.h>
int main()
{
int num;
while (1) {
printf("请输入2到9的整数:");
scanf("%d", &num);
if ((num < 2) || (num > 9)) {
break;
}
for (int i = 1; i <= num; i++) {
for (int j = 0; j < (num - i); j++) {
printf(" ");
}
for (int j = 0; j < (2 * i - 1); j++) {
printf("*");
}
printf("\n");
}
for (int i = num - 1; i > 0; i--) {
for (int j = 0; j < (num - i); j++) {
printf(" ");
}
for (int j = 0; j < (2 * i - 1); j++) {
printf("*");
}
printf("\n");
}
}
printf("程序结束\n");
return 0;
}
可以参考:C语言输出双层金字塔
仅供参考!谢谢!
#include <stdio.h>
void print(int n, char c)
{
puts("");
for (int i = 1; i <= n; i++)
{
for (int j = 0; j < 2 * i - 1; j++)
{
if (j == 0)
printf("%*c", n - i + 1, c);
else
printf("%c", c);
}
puts("");
}
for (int i = 1; i < n; i++)
{
for (int j = 2 * (n - i) - 1; j > 0; j--)
{
if (j == 2 * (n - i) - 1)
printf("%*c", i + 1, c);
else
printf("%c", c);
}
puts("");
}
}
int main(int argc, char *argv[])
{
int n = 0;
printf("输入金字塔组数:");
while (n <= 0)
scanf("%d", &n);
int arr[n];
printf("\n输入各个金字塔层数:");
for (int i = 0; i < n; i++)
{
scanf("%d", &arr[i]);
}
//输出
for (int i = 0; i < n; i++)
{
print(arr[i], '#');
}
return 0;
}