第2次循环
执行if语句。7%3不为0,if语句的条件表达式不成立,不执行printf(%d”,- -y)
转向表达式3,执行y--,y=y-1=7-1=6。循环条件y>0成立,进入第3次循环
第3次循环
执行if语句。6%3==0,if语句的条件表达式成立,执行printf(%d”,- -y),即y先自减1变为5,然后在输出,因此屏幕上输出5
转向表达式3,执行y--,y=y-1=5-1=4。循环条件y>0成立,进入第4次循环
第4次循环
执行if语句。4%3不为0,if语句的条件表达式不成立,不执行printf(%d”,- -y)
转向表达式3,执行y--,y=4-1=3。循环条件y>0成立,进入第5次循环
第5次循环
执行if语句。3%3==0,if语句的条件表达式成立,执行printf(%d”,- -y),即y先自减1变为2,然后在输出,因此屏幕上输出2
转向表达式3,执行y--,y=y-1=2-1=1。循环条件y>0成立,进入第5次循环
第6次循环
执行if语句。1%3不为0,if语句的条件表达式不成立,不执行printf(%d”,- -y)
转向表达式3,执行y--,y=1-1=0。循环条件y>0不成立,循环结束。
8.
#include
main()
{ int i,sum=0;i=1;
do{ sum=sum+i; i++; }while(i<=10);
printf(“%d”,sum);
}
运行结果为: 55
9.
#include
#define N 4
main()
{ int i;
int x1=1,x2=2;
printf("");
for(i=1;i<=N;i++)
{ printf("%4d%4d",x1,x2);
if(i%2==0)
printf("");
x1=x1+x2;
x2=x2+x1;
}
}
运行结果为:
1 2 3 5
8 132134
此题 首先为整型变量赋初值x1=1,x2=2
表达式1为i=1,表达式2(循环条件)为i<=N即i<=4,表达式3为i++
循环变量初值i为1,循环条件(即表达式2)i<=4成立,进入第1次循环
第1次循环
执行printf("%4d%4d",x1,x2);因此屏幕上输出12
执行if语句。1%2不为0,if语句的条件表达式不成立,不执行printf("");
执行x1=x1+x2=1+2=3;此时x1中的值已变为3
执行x2=x2+x1=2+3=5。
转向表达式3,执行i++,i为2。循环条件i<=4成立,进入第2次循环
第2次循环
执行printf("%4d%4d",x1,x2);因此屏幕上输出35
执行if语句。2%2==0,if语句的`条件表达式成立,执行printf("");换行
执行x1=x1+x2=3+5=8;此时x1中的值已变为8
执行x2=x2+x1=5+8=13。
转向表达式3,执行i++,i为3。循环条件i<=4成立,进入第3次循环
第3次循环
执行printf("%4d%4d",x1,x2);因此屏幕上输出813
执行if语句。3%2不为0,if语句的条件表达式不成立,不执行printf("");
执行x1=x1+x2=8+13=21;此时x1中的值已变为21
执行x2=x2+x1=21+13=34。
转向表达式3,执行i++,i为4。循环条件i<=4成立,进入第4次循环
第2次循环
执行printf("%4d%4d",x1,x2);因此屏幕上输出2134
执行if语句。4%2==0,if语句的条件表达式成立,执行printf("");换行
执行x1=x1+x2=21+34=55;此时x1中的值已变为55
执行x2=x2+x1=34+55=89。
转向表达式3,执行i++,i为5。循环条件i<=4不成立,结束循环
10
#include
main( )
{intx, y;
for(x=30, y=0; x>=10, y<10; x--, y++)
x/=2, y+=2;
printf(“x=%d,y=%d”,x,y);
}
运行结果为:
x=0,y=12 11.
#include
#define N 4
main( )
{ inti,j;
for(i=1;i<=N;i++)
{ for(j=1;j printf(" ");
printf("*");
printf("");
}}
运行结果为:
*
*
*
*
详见教材P41符号常量
用宏处理指令定义符号常量N为4,在编译过程中,遇到N即视为整数4。
外层for循环,表达式1为i=1,表达式2(循环条件)为i<=N,表达式3为 i++
内层for循环,表达式1为j=1,表达式2(循环条件)为j 首先计算外层循环的表达式1,i为1,使得循环条件i<=4成立,进入外层for循环体
外层for循环第1次此时i为1
内层循环j=1,使得循环条件j 执行printf("*");
执行printf("");换行
至此外层循环体执行完,计算外层循环的表达式3,i++,此时i为2. 使得循环条件i<=4
成立,再次进入外层for循环体
外层for循环第2次 此时i为2
内层循环j=1,使得循环条件j 第1次执行内层循环体printf(" ");
执行内层循环表达式3,j++为2,j 执行printf("*");
执行printf("");换行
至此外层循环体执行完,计算外层循环的表达式3,i++,此时i为3. 使得循环条件i<=4
成立,进入外层for循环体
外层for循环第3次 此时i为3
内层循环j=1,使得循环条件j 第1次执行内层循环体printf(" ");
执行内层循环表达式3,j++为2,j 第2次执行内层循环体printf(" ");
执行内层循环表达式3,j++为3,j 执行printf("*");
执行printf("");换行
至此外层循环体执行完,计算外层循环的表达式3,i++,此时i为4. 使得循环条件i<=4
成立,进入外层for循环体
外层for循环第4次 此时i为4
内层循环j=1,使得循环条件j 第1次执行内层循环体printf(" ");
执行内层循环表达式3,j++为2,j 第2次执行内层循环体printf(" ");
执行内层循环表达式3,j++为3,j 第3次执行内层循环体printf(" ");
执行内层循环表达式3,j++为4,j 执行printf("*");
执行printf("");换行
至此外层循环体执行完,计算外层循环的表达式3,i++,此时i为5. 使得循环条件i<=4
不成立,跳出外层for循环体
【计算机c语言试题及答案】相关文章:
4.c语言练习试题