zjmm19 发表于 2020-9-23 09:25:50

关于课后作业打印三角形




while number:
    i = number - 1
    while i:
      print(' ', end = '')
      i = i - 1
    j = number
    while j:
      print('*', end = '')
      j = j - 1
    print()
    number = number - 1
这一串代码是什么意思 最后的print()作用是什么 为什么我给他加缩进代码运行后是这样:请输入一个整数:5
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*

zer0leng 发表于 2020-9-23 09:49:33

参考答案{:10_245:}
number=int(input('请输入一个整数:'))
while number:
    i = number - 1
    while i:
      print(' ', end = '')#输出空格,并以end的内容代替默认的打印结束后\n(换行);现在执行效果就是空格空格...直到退出循环
      i = i - 1
    j = number
    while j:
      print('*', end = '')#执行效果**....直到退出循环
      j = j - 1
    print()#不打印,但执行默认的\n(换行)
    number = number - 1

删除    print()这行代码对比下应该就理解了{:10_245:}

风过无痕1989 发表于 2020-9-23 09:50:46

#include <stdio.h>
#include <math.h>
int main()
{
    int i, j;
    for (i = 1; i < 5; i++)                           /* 控制行 */
    {
      for (j = 1; j <= 7; j++)                        /* 控制列 */
      {
            if (abs(4 - j) < ((i < 4) ? i : 8 - i))   /* (i < 4) 否?是,计算 i ,不是,计算 8 - i */
                printf("*");
            else
                printf(" ");
      }
      printf("\n");
    }
    return 0;
}

这是C语言的,你看看能不以改写你要的那个语言的

zjmm19 发表于 2020-9-23 09:56:59

zer0leng 发表于 2020-9-23 09:49
参考答案
number=int(input('请输入一个整数:'))
while number:


加了这个才有换行的效果 否则就会打出一行*
页: [1]
查看完整版本: 关于课后作业打印三角形