二级C练习册答案详细解答-第四章.docx
文本预览下载声明
精品教育的倡导者 饮水思源·感恩戴德
做一个有责任心,有耐心,有爱心的老师使我们源恩教育每一位老师的追求。
第4章 循环结构
4.1 while语句
(1)【答案】C) 【解析】while语句中表达式是循环条件,语句为循环体。while语句中当表达式计算的值为真(非0)时,执行循环体语句。因此条件表达式执行的次数总是比循环体多一次。
(2)【答案】B) 【解析】在while循环中每次变量y的值减1,直到其值等于0时退出循环,这时y的再减1变为-1。
(3)【答案】C) 【解析】在程序语句中,k的初始值为5,进行第1次while循环后,k自减1为4,非0,执行循环体里的printf语句,输出1,此时k的值变为1。程序执行第2次循环时,k自减1变为0,为假,退出while循环语句。所以程序的最后结果为1。
(4)【答案】C) 【解析】while 循环语句的循环体为空语句,所以每一次循环程序什么都不做。当循环自变量y=0时,退出循环结束,变量y执行自减运算,得-1,所以打印输出变量y的值为-1。
(5)【答案】B) 【解析】这道试题主要考查了switch和break语句,当变量s的值为1时,执行case1、case 2两条语句,输出65;当变量s的值为2时,执行case 2语句,输出6;变量s的值为3时,执行case3、default两条语句,输出64;变量s的值为4时,执行default语句,输入5;变量s的值为5时,执行default语句,输出6;变量s的值为0时,程序运行结束。
(6)【答案】C) 【解析】在while语句中,先判断while后面的表达式是否为0,如果为0,则退出循环,否则执行循环体。在本题中,当变量a的值经过几次循环后,其值等于0时,退出while循环语句,变量a再执行自减运算,所以其值等于-1。
(7)【答案】A) 【解析】在while(E)中,表达式E可以是C语言中任意合法的条件表达式,但不能为空,由它来控制循环体是否执行。在选项A)中表达式E0||E0 是一个逻辑表达式。
(8)【答案】B) 【解析】循环体执行两次,第一次表达式a++值为-2,a的值为-1,执行循环体++b,b值为1,第二次表达式a++值为-1,a的值等于0,执行++b,b值为2,第三次判断条件a++,表达式值为0,不执行循环体,但是条件判断以后,a的值为1。
(9)【答案】C) 【解析】循环条件表达式为赋值表达式k=1,因此循环执行无限次。
(10)【答案】B) 【解析】循环体为空,共执行2次。第一次变量a初值为-2,b初值为0,表达式a++ ++b值为1,同时a的值为-1,b的值为1,第二次循环条件判断以后,a的值为0,b的值2,执行循环体空,第三次判断条件表达式值为0,不执行循环体,而a的值为1,但是表达式a++的值为0,因此不计算表达式++b的值,b的值仍为2。
4.2 do-while语句
(1)【答案】D) 【解析】do-while语句先执行语句,后判断表达式的值。故do-while语句又称“直到型”循环结构。由于是先执行后判断,因此do-while语句的循环语句至少被执行一次,循环条件至少判断一次。
(2)【答案】A) 【解析】选项B)中while(1)永远为真所以进入死循环,选项C)中while(n=10)同理,选项D)中for循环没有循环限定条件也将进入无限循环,只有选项A)中while(n=0)循环判定成立,循环将不进入无限循环。
(3)【答案】C) 【解析】do…while循环的执行过程如下:①执行do后面的循环体中的语句。②计算while后一对圆括号中表达式的值。当值为非0时,转去执行步骤①;当值为0时,执行步骤③。③退出do…while循环。对于本题变量i的初始值等于“0”,接着执行do后面的循环体中的语句,输出变量i的值0。再判断while后面括号中表达式i++的值,其值为0,所以循环结束。此时变量i的值经过自加已经变为1,所以再次输出i的值“1”。
(4)【答案】C) 【解析】由于a的初始值等于-2,所以while循环语言执行三次结束,第一次a=-2,b=1,然后判断循环条件a++非零,执行第二次循环体a=-1,b=2,判断循环条件非零,执行循环体a=0,b=3,判断循环条件为0,此时变量a的值等于1。
(5)【答案】B) 【解析】循环体执行两次。首先输出a=1,然后判断表达式!(--a),a为0,循环条件表达式值为1,执行第二次循环体,输出a=-2。判断循环条件表达式值为0,循环退出。
4.3 for语句
(1)【答案】C) 【解析】rand()函数功能为产生一个随机数,rand()%5,则产生0~4之间的任意随机数,当产生的随机数n为0时
显示全部