永发信息网

用C++语言编程输出菱形(共7行*),要求主函数实现调用,后面有注释

答案:2  悬赏:30  手机版
解决时间 2021-05-14 11:38
  • 提问者网友:雾里闻花香
  • 2021-05-14 05:38

要求main函数只实现调用,数据结构:数组、指针、结构体、文件(至少采用三种以上数据结构),美化运行界面,有友好提示,背景设置(颜色,图片),显示字体设置 。 菱形如下:

*

* *

* * *

* * * *

* * *

* *

*

最佳答案
  • 五星知识达人网友:西风乍起
  • 2021-05-14 07:08

这个可以打印任意行数.




#include<stdio.h>


int main(void)
{
int n = 1; //n 表示行数


int a = 0; //a 用来表示打印”空格“的个数


int b = 0; //b 用来表示打印“*“的个数


int k;


printf("请输入你想要的菱形的总行数(此数应为奇数)\n");


scanf("%d",&k);


for(;n < k / 2 + 2 ;n++)
{
for(;b < n;b++)//此循环用来表示打印*,循环一次表示打印一个*
{
printf("*");
}
a = 0; //在小循环后a b值改变


b = 0; //重新把他们值赋为 0


printf("\n"); //打印换行符
}


a = 0; //在大循环后a b值改变


b = 0; //重新把他们值赋为 0


for(;n < k + 1;n++)
{
for(;b < k - n + 1;b++)
{
printf("*");
}
a = 0; //在小循环后a b值改变


b = 0; //重新把他们值赋为 0


printf("\n"); //打印换行符
}
return 0 ;
}

全部回答
  • 1楼网友:轻熟杀无赦
  • 2021-05-14 08:43
#include <stdio.h> #define N 3 int main() { int i, j, k = 1; for ( i = 0; i >= 0; i += k ) { for ( j = 0; j < N-i; ++j ) putchar( ' ' ); for ( j = 0; j < 2*i+1; ++j ) putchar( '*' ); putchar( '\n' ); if ( i == N ) k = -1; } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯