笫二部分语言程序设计同步训练 printf("dn”,m--); A4 B)5 C)6 D)7 二、根据程序的功能将以下程序补充完整 以下程序对输入的4个整数,按从小到大的顺序输出。请在内填入正确内容 main() int t, a, b,c, d printf("input a, b,c, d: " scanf(“d,旨d,d,旨d if(a>b) I if it=a; a=; C=t; 1 if (a>d)t=a; a=d; d=t if (b>d)t=b; b=d; d=t; 1 if (c>d)t=c; c=d; d=t; K printf("d,旨d,号d,d",a,b,C,d); 三、编程题 1.试编程判断输入的正整数是否既是5又是7的整倍数。若是,则输出yes:否则输 出 2.编制程序要求输入整数x、y和z,若x2+y2+2大于100则输出x2+y2+2千位以上 的数字,否则输出3数之和。 3.编写程序,输入三角型的3条边长,求其面积。注意:对于不合理的边长输入要输 出数据错误的提示信息。 第2讲 知识归纳 l.if语句的第三种形式 if(条件1){语句1} else if(条件2){语句2} else if(条件3){语句3 else{语句n 2.if语句的嵌套 (1)三种if语句可以互相嵌套,应当注意的是,else总是与它上面最近的if配对 (2)如果if与else的数目不一样,为实现程序设计者的企图,可以加{}括起来确定 配对关系
第二部分 C 语言程序设计同步训练 ·141· ·141· else printf(“%d\n”,m--); } A)4 B)5 C)6 D)7 二、根据程序的功能将以下程序补充完整 以下程序对输入的 4 个整数,按从小到大的顺序输出。请在 内填入正确内容。 main() { int t,a,b,c,d; printf(“input a,b,c,d:”) scanf(“%d,%d,%d,%d”, ); if(a>b) { } if ( ) {t=a;a=c;c=t;} if (a>d) {t=a;a=d;d=t;} if ( ) {t=b;b=c;c=t;} if (b>d) {t=b;b=d;d=t;} if (c>d) {t=c;c=d;d=t;} printf(“%d,%d,%d,%d”,a,b,c,d); } 三、编程题 1. 试编程判断输入的正整数是否既是 5 又是 7 的整倍数。若是,则输出 yes;否则输 出 no。 2. 编制程序要求输入整数 x、y 和 z,若 x 2 +y2 +z2大于 1000,则输出 x 2 +y2 +z2千位以上 的数字,否则输出 3 数之和。 3. 编写程序,输入三角型的 3 条边长,求其面积。注意:对于不合理的边长输入要输 出数据错误的提示信息。 第 2 讲 知识归纳 1. if 语句的第三种形式 if ( 条件 1 ) { 语句 1 } else if ( 条件 2 ) { 语句 2 } else if ( 条件 3 ) { 语句 3 } else { 语句 n} 2. if 语句的嵌套 (1) 三种 if 语句可以互相嵌套,应当注意的是,else 总是与它上面最近的 if 配对。 (2) 如果 if 与 else 的数目不一样,为实现程序设计者的企图,可以加{} 括起来确定 配对关系。
C语言程序设计上机指导与同步训练 3.条件运算符 (1)格式:表达式1表达式2:表达式3 2)条件运算符的结合方向为“自右至左 如:a>b?a:c>d?c:d∥先算出c>d?c:d,用它的结果,作为表达式3,参与前面的 算。 4. switch语句 格式: switch(表达式) case常量表达式1:{语句1} case常量表达式2:{语句2} case常量表达式n:{语句n} default:{语句n+l ∥ default可有可无; switch语句后,表达式的类型常用int或char型数据类型,case后的常量表达式类型 定与表达式类型匹配 (1)case后常量表达式的值必须互不相同; (2)case和 default出现次序不影响执行结果 (3)case语句后如没有 break,顺序向下执行。切记! 基础训练(A) 、填空题 1.在i语句中又包含一个或多个i语句称为 2.为了避免在嵌套的条件语句 if-else中产生二义性,C语言规定:else子句总是与if 配对。如果if与else数目不一样,为实现设计者的企图,可以加 来确定配对关 3.条件运算符是C语言中唯一的一个 目运算符,其结合性为 4.假设条件表达式的格式为:表达式1?表达式2:表达式3 若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较的 类型 在 switch语句中, switch后面括弧内的“表达式”,可以为 类 6.若a=1,b=2,则表达式a>b?ab+1的值是 7.若w=1、x=2、y=3、z=4,则条件表达式w< ?w:y<z?y: z的值是 8.若有以下f语句:if(a<b)min=a 可用条件运算符来处理的等价式子为 9.若x=1y=2,z=3,则表达式(xy?xy)=2+的值是 10.设有变量定义:inta=5c=4,则(-a=+c)?-ac++的值是 ,此时c的存储单 元的值为
·142· C 语言程序设计上机指导与同步训练 ·142· 3. 条件运算符 (1) 格式:表达式 1 ?表达式 2 :表达式 3 (2) 条件运算符的结合方向为“自右至左”; 如:a>b?a:c>d?c:d; //先算出 c>d?c:d ,用它的结果,作为表达式 3,参与前面的 运算。 4. switch 语句 格式:switch ( 表达式 ) { case 常量表达式 1 : { 语句 1 } case 常量表达式 2 : { 语句 2 } …. case 常量表达式 n : { 语句 n } default: { 语句 n+1 } //default 可有可无; } switch 语句后,表达式的类型常用 int 或 char 型数据类型,case 后的常量表达式类型一 定与表达式类型匹配; (1) case 后常量表达式的值必须互不相同; (2) case 和 default 出现次序不影响执行结果; (3) case 语句后如没有 break,顺序向下执行。切记! 基础训练(A) 一、填空题 1. 在 if 语句中又包含一个或多个 if 语句称为 。 2. 为了避免在嵌套的条件语句 if-else 中产生二义性,C 语言规定:else 子句总是与 if 配对。如果 if 与 else 数目不一样,为实现设计者的企图,可以加 来确定配对关 系。 3. 条件运算符是 C 语言中唯一的一个 目运算符,其结合性为 。 4. 假设条件表达式的格式为:表达式 1?表达式 2:表达式 3 若表达式 2 和表达式 3 的类型不同,此时条件表达式的值的类型为二者中较 的 类型。 5. 在 switch 语句中,switch 后面括弧内的“表达式”,可以为 类型。 6. 若 a=1,b=2,则表达式 a>b?a:b+1 的值是 。 7. 若 w=1、x=2、y=3、z=4,则条件表达式 w<x?w:y<z?y:z 的值是 。 8. 若有以下 if 语句:if (a<b) min=a; else min=b; 可用条件运算符来处理的等价式子为 。 9. 若 x=1,y=2,z=3,则表达式(x<y?x:y)==z++的值是 。 10. 设有变量定义:int a=5,c=4;则(--a==++c)?--a:c++的值是 ,此时 c 的存储单 元的值为