c - 用C画三角形和正方形
问题描述
我必须在正方形上绘制一个带有星号的三角形,预期输出如下图所示。
指令是这样的:编写一个 C 程序,从用户那里读取一个数字 n,并允许使用“*”字符打印带屋顶的房子。房子应该是 anxn 正方形,屋顶有两条 45 度的对角线形成一个屋顶(如果 n 是奇数,则屋顶完美地闭合在顶部)。我创建了一个三角形和正方形,但我无法将它们组合起来。三角形
{
int i,j,k,x,h=0;
printf("\n\n");
for( i = 1; i <= 5; i++)
{
for( k = 1; k <=5-i; k++)
{
printf(" ");
}
printf("*");
for( j = 2; j <= 2*i-2; j++)
{
printf(" ");
}
if(i>1) printf("*");
printf("\n");
}
for ( i = 1; i <= 5; i++)
{
printf("* ");
}
printf("\n\n");
return 0;
}
解决方案
首先你可能会发现你需要有两种情况:n
奇数或n
偶数。
然后如果n
是奇数,则需要迭代1+(n-1)/2
次数,如果n
是偶数,则需要迭代n/2
以打印^
形状。
打印类似 的形状后^
,需要用n
'*'
s 打印一条线。
然后你需要迭代次数,每次n-2
打印一行带有 a '*'
,n-2
' '
s 和另一个。'*'
n
'*'
最后用s打印一行。
尝试将每个句子转换成一段 c 代码,就完成了。
推荐阅读
- reactjs - 返回堆栈时,React 导航道具似乎没有刷新
- class - Adobe Animate ReferenceError:错误 #1069:在 _ 上找不到属性 loopMode,并且没有默认值
- regex - 301 将带有国家域的 TLD 重定向到另一个域
- excel - 如何删除不符合用户输入条件的行?
- php - 如何在函数中输入变量以在 MySQL 准备语句中使用?
- css - CSS 过渡下拉 - 自动滚动到有条件渲染的元素
- r - 如何在 ggplot 中空白轴标题而不影响绘图大小?
- algorithm - 修复二叉搜索树的算法
- javascript - ReferenceError:找不到变量:登录
- php - PHP 传递命令行选项