资源描述:
2016年计算机二级C语言测试题及答案解析(二) 基本输入输出及流程控制 1. include main { int a1,b3,c5; if cab printf“yes\n“; else printf“no\n“; } 运行结果为no 详见教材p89 选择结构 详见教材p91关系符号 详见附录D p378符号的优先级 表示判断符号两边的值是否相等;表示将符号右边的值赋给左边的变量 本题考点是选择结构3种基本形式的第二种 选择结构三种一般形式中的“语句”皆为复合语句,复合语句要用{ }括起来,只有当复合语句中只包括一条语句时可以省略{ },此题即如此,因此两个printf操作没有加{ } 若cab成立,则执行printf“yes\n“; 否则(即cab不成立),执行printf“no\n“; 的优先级高于,因此先算ab,值为4, 表达式54不成立,因此执行printf“no\n“;即输出字符串no 2. include main { int a12, b -34, c56, min0; mina; ifminb minb; ifminc minc; printf“mind“, min; } 运行结果为 min-34 详见教材p89 选择结构 本题考点是选择结构3种基本形式的第一种 一共包含了两个选择结构(两个if语句) 定义变量,并赋值 此时a12, b -34, c56, min0 将a中值拷贝,赋给min,覆盖了min中的0,此时min中的值被更新为12。 若minb成立,则执行minb; 若minc成立,则执行minc; 输出min中的值 12大于-34,第一个if语句的表达式成立,因此执行minb; 执行后min中的值被更新为-34. -34小于56,第二个if语句的表达式不成立,因此不执行minc; 最后输出min中的值,为-34. 3. include main { int x2,y -1,z5; ifx ify0),执行zz1; 输出z 2-1,表达式x 输出z中的值为5 4. include main { float a,b,c,t; a3; b7; c1; ifab {ta;ab;bt;} ifac {ta;ac;ct;} ifbc {tb;bc;ct;} printf“5.2f,5.2f,5.2f“,a,b,c; } 运行结果为1.00,2.00,7.00 详见教材p72数据的输出形式 本题包含了3个if语句,每个if语句后的{ }都不可省略,因为每个{ }中都包含了多条语句 若表达式ab成立,则执行{ta;ab;bt;} 若表达式ac成立,则执行{ta;ac;ct;} 若表达式bc成立,则执行{tb;bc;ct;} 输出a,b,c中的值,要求输出的每个数据宽度为5个空格,小数部分保留2位,数据右对齐 3小于7,因此表达式ab不成立,因此不执行{ta;ab;bt;} 3大于1,因此表达式ac成立,则执行{ta;ab;bt;}。第一句,将a中的3拷贝,粘贴到t中;第二句,将c中的1拷贝,粘贴到a中,覆盖掉先前的3;第三句。将t中的3拷贝到c中,覆盖掉c中先前的1. 执行完复合语句后实现了a,c元素的值的互换,a为1,c为3,t为3,。 7大于c中的3,因此bc成立,执行则执行{tb;bc;ct;},过程同上,执行后b为3,c为7,t为7 此时输出a,b,c中的值为1.00,2.00,7.00 5. include main {floatc3.0 , d4.0; if cd c5.0; else if cd c6.0; elsec7.0; printf “.1f\n”,c ; } 运行结果为7.0 此题为if...else...语句的嵌套,第二if...else...作为第一个if...else...语句else部分的复合语句。 若表达式cd成立,则执行c5.0; 否则(表达式cd不成立) 若表达式cd成立,则执行c6.0; 否则,执行c7.0; 输出c中的值 3.0小于4.0,因此表达式cd不成立,执行第二个ifelse。 3.0不等于4.0,因此表达式cd不成立,执行c7.0,将7.0赋给c, 覆盖掉c中的3.0,此时c中的值为7.0 输出此时的c中的值
展开阅读全文