2019二级C题库及解析(12)

2020-06-23 14:50:32 浏览数 (1)

运行结果为:

循环

20.

代码语言:javascript复制
#include <stdio.h>
main( )
   {  
       int x, y;
       for(x=30, y=0; x>=10, y<10; x--, y  )
           x/=2, y =2;
       printf(“x=%d,y=%dn”,x,y);
}

运行结果为:

x=0,y=12

21. 符号常量

代码语言:javascript复制
#include <stdio.h>
#define N 4
main( )
{ 
    int  i,j;
    for(i=1;i<=N;i  )
    {
        for(j=1;j<i;j  )
            printf(" ");
        printf("*");
        printf("n");
    }
}

运行结果为:

*

*

*

*

用宏处理指令定义符号常量N为4,在编译过程中,遇到N即视为整数4。

外层for循环,表达式1为i=1,表达式2(循环条件)为i<=N,表达式3为 i

内层for循环,表达式1为j=1,表达式2(循环条件)为j<i, 表达式3为j

首先计算外层循环的表达式1,i为1,使得循环条件i<=4成立,进入外层for循环体

外层for循环第1次 此时i为1

内层循环j=1,使得循环条件j<i不成立,因此不执行内层循环体(不输出空格)

执行printf("*");

执行printf("n");换行

至此外层循环体执行完,计算外层循环的表达式3,i ,此时i为2. 使得循环条件i<=4

成立,再次进入外层for循环体

外层for循环第2次 此时i为2

内层循环j=1,使得循环条件j<i成立

第1次执行内层循环体printf(" ");

执行内层循环表达式3,j 为2,j<i不成立,跳出内层循环

执行printf("*");

执行printf("n");换行

至此外层循环体执行完,计算外层循环的表达式3,i ,此时i为3. 使得循环条件i<=4

成立,进入外层for循环体

外层for循环第3次 此时i为3

内层循环j=1,使得循环条件j<i成立

第1次执行内层循环体printf(" ");

执行内层循环表达式3,j 为2,j<i成立,再次执行内层循环

第2次执行内层循环体printf(" ");

执行内层循环表达式3,j 为3,j<i不成立,跳出内层循环

执行printf("*");

执行printf("n");换行

至此外层循环体执行完,计算外层循环的表达式3,i ,此时i为4. 使得循环条件i<=4

成立,进入外层for循环体

外层for循环第4次 此时i为4

内层循环j=1,使得循环条件j<i成立

第1次执行内层循环体printf(" ");

执行内层循环表达式3,j 为2,j<i成立,再次执行内层循环

第2次执行内层循环体printf(" ");

执行内层循环表达式3,j 为3,j<i成立,再次执行内层循环

第3次执行内层循环体printf(" ");

执行内层循环表达式3,j 为4,j<i不成立,跳出内层循环

执行printf("*");

执行printf("n");换行

至此外层循环体执行完,计算外层循环的表达式3,i ,此时i为5. 使得循环条件i<=4

不成立,跳出外层for循环体

0 人点赞