C语言的课程题,求大神解答,谢谢

C语言的课程题,求大神解答,谢谢for(i=1;i<=n;i++){for(j=3*n-2;j>=i;j--){if(i==1||i==n&&j<=2*n-1+(n-i)... C语言的课程题,求大神解答,谢谢for(i=1;i<=n;i++){for(j=3*n-2;j>=i;j--){if(i==1||i==n&&j<=2*n-1+(n-i)||j==i||j==3*n-i-1) printf("*");Else printf(" "); }printf("\n"); } } for(j=1;j<=n;j++){for(i=n-j-1;i<=n;i++)printf(" ");if(j==1){for(i=1;i<=n+2*(n-1);i++)printf("*");printf("\n");}else if(j==n){for(i=1;i<=n;i++)printf("*");printf("\n");}else{for(printf("*"),i=2;i<=n+2*(n-j)-1;i++)printf(" ");printf("*\n"); } }以上两个程序片段均可绘出相同的图形,但是代码量和效率大不相同,请根据给定n=4画出对应图形并分析第一种的思路。 展开
 我来答
xuzhouliuying
高粉答主

2017-01-17 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:5.4万
采纳率:86%
帮助的人:2.6亿
展开全部

两个代码绘出的图形是相同的:

就是打印一个等腰梯形。

第一种代码明显简洁而且效率更高。

就是将这个等腰梯形的4条边分解成4条线段,分别根据各线段满足的关于n、i、j的关系式:

i=1

i=n且j≤3n-i-1

j=i

j=3n-i-1

满足上述关系式,打印*,不满足关系式,打印空格。

这种思路最直接,也最简便。

烛龙不强
2017-01-16 · TA获得超过188个赞
知道答主
回答量:58
采纳率:0%
帮助的人:31万
展开全部
把代码整理一下再发吧。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式