用c语言编辑一个等腰三角形的讲解过程
1个回答
展开全部
等腰三角形的话。。。是类似于下面这样的东东吗?
*
***
*****
这个重在分析,程序写起来很简单。
因为c语言的输出一定是按行输出的,所以可以按行分析三角形每行的字符构成:
总共3行的等腰三角形:
* 第1行,需要输出2个空格,1个*
*** 第2行,需要输出1个空格,3个*
***** 第3行,需要输出0个空格,5个*
所以是否能够根据上面的分析,得出结论呢?再来分析一个5行的三角形:
总共5行的等腰三角形:
* 第1行,需要输出4个空格,1个*
*** 第2行,需要输出3个空格,3个*
***** 第3行,需要输出2个空格,5个*
******* 第4行,需要输出1个空格,7个*
********* 第5行,需要输出0个空格,9个*
然后好像有感觉了:要输出一个n行的等腰三角形,那么:
每行需要输出的空格数是个递减的等差数列:space(i) = n - i, 其中行号i = 1,2...
每行需要输出的*数也是个等差数列: star(i) = 2 * i - 1, 其中行号i = 1,2...
所以有了公式,程序的话应该也不难了:
void printTriangle(int n) {
int i, j, k, space, star;
// 总共要打印n行
for(i=1; i<=n; i++) {
// 先打印n-i个空格
space = n - i;
for(j=0; j<space; j++) {
printf(" ");
}
// 然后打印2i-1个*
star = 2 * i - 1;
for(k=0; k<star; k++) {
printf("*");
}
// 换行
printf("\n");
}
}
东莞大凡
2024-08-07 广告
2024-08-07 广告
作为东莞市大凡光学科技有限公司的一员,我们深知Matlab圆点标定板在相机标定中的重要性。该标定板通过均匀分布的圆点,帮助精确计算相机参数,优化成像效果。Matlab强大的编程功能,使得我们能够灵活设计标定板,调整圆点大小、数量和分布,以满...
点击进入详情页
本回答由东莞大凡提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询