爱问知识人 爱问教育 医院库

C语言问题

首页

C语言问题

#include <stdio.h>
main()
{int row=1,col;
 for(; row<=5;row++)
 {for(col=1;col<=row-1;col++)
 printf(" ");
 printf("********\n");}
} 

提交回答
好评回答
  • 2006-08-09 11:43:42
    这是一个FOR的双重循环,输出一个平行四边形的*号。
    第一层循环:控制输出5行*符号。
    第二层循环:控制输出*符号前面的空格符。
    至于你说的printf("********\n");这句话为什么放在第一层循环外,而不放在第一层循环内,是因为如果放在第一层循环内,程序会输出10行*号,每行*号前面有一个空格,成长方形了,与平行四边形是两种效果,看你要哪种了!
    PS:原来你说的是大括号啊,C语言的书写格式是很自由的,只要大括号配好对,执行逻辑正确,怎么放怎么有理!
    两种输出效果见下图:
    

    心***

    2006-08-09 11:43:42

其他答案

    2006-08-13 17:04:19
  • 因为这个for循环是一个语句块,为了让TC认识到这一点,我们就给它加个大括号括在一起啦!

    荆***

    2006-08-13 17:04:19

  • 2006-08-09 12:50:37
  • 如果for循环所要执行的句子只有一句,那么不用{包围起来也可以,如果要执行的句子超过一句那么,就要用{包围起来,所以第二个循环执行的只有一句,就是printf(" ");而第一个循环除了执行第二个循环外,还要执行printf("********\n");,所以写成如下格式会更一目了然
    #include 
    main()
    {
      int row=1,col;
      for(; row<=5;row++)
      {  
        for(col=1;col<=row-1;col++)
        {  
          printf(" ");
        }
        printf("********\n");}
      } 
    }

    弘***

    2006-08-09 12:50:37

  • 2006-08-09 11:40:31
  • 这个}和第二个for前面那个{是一对。
    大括号这东西,放这儿和另起一行都可以。

    1***

    2006-08-09 11:40:31

类似问题

换一换
  • 程序设计 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):