总结:
1.普通字符原样输入,原样输出。
2.对于%d格式,指定宽度小于输出宽度,原样输出。
3.%#o,%#x,%#X表示要输出八进制的前导符数字0,和十六进制的前导符0x,0X。
4.%x,%X格式,小写对小写,大写对大写。 5.%*md:表示跳过相应的输入项。
6.注意进制间的转换,以及无符号数和带符号数之间的转换。
7.在scanf()函数中,给double类型变量输入数据时,应该使用%lf类型说明符,而输出时,可以用%lf,也可以用%lf。
三. 试题分析 1.2008年4月试题分析
(16)有以下程序段 char ch; int k; ch='a'; k=12;
printf(\
已知字符a的ASCll十进制代码为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12
2.2007年9月试题分析
(15)若在定义语句:int a,b,c,*p=&c; 之后,接着执行以下选项中的语句,则能正确执行的语句是 A)scanf(\ B)scanf(\ C)scanf(\ D)scanf(\(18)有以下程序段
int j; float y; char name[50]; scanf(\
当执行上述程序段,从键盘上输入55566 7777abc 后,y的值为 A)55566.0 B)566.0 C)7777.0 D)566777.0 填空(6)执行以下程序时输入1234567
{ int a=1,b;
scanf(\ printf(\ %d\\n\ }
3.2007年4月试题分析
(16)设变量均已正确定义,若要通过scan(“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)( D) A)10□X□20□Y〈回车〉 B)10□X20□Y〈回车〉 C)10□X〈回车〉 D)10X〈回车〉 20□Y〈回车〉 20Y〈回车〉 填空(6) 执行以下程序后的输出结果是 。 main() {int a=10;
a=(3*5,a+4); printf(“a=%d\\n”,a); }
第三章 选择结构
一.教学重点、难点
知识点 关系运算符及优先次序 关系表达式 逻辑运算符及优先级 逻辑表达式 if语句的几种形式 if语句的嵌套 条件运算符 switch语句 语句标号 goto 所占分值 0-1 0-1 1-2 1-2 1-2 1-2 0-1 2-4 0-1 1-2 考核几率 40% 50% 50% 50% 100% 100% 100% 100% 10% 10% 专家点评 简单识记 简单,属重点识记知识点 简单识记 简单,属重点识记知识点 简单识记 难度适中,重点掌握 难度适中,重点掌握 简单,重点掌握重点理解 偏难,不是重点 简单识记 二.教学内容
1.关系运算与逻辑运算
1.1逻辑值
真(非零值) 假(零)
1.2关系运算符及其表达式
< <= > >= == !=
关系运算符优先级别低于算术运算符,高于赋值运算符。 ( < <= > >=)优先级别高于(== !=) 如:a>b+c 等价于a>(b+c) a==b 关系表达式的值只有1和0,其中1表示“真”,0表示“假”。 1.3逻辑运算符及其表达式 && 逻辑“与” || 逻辑“或” !逻辑“非” 优先级别:! 》&& 》|| 运算规则: 逻辑&&:遇假则假 逻辑||:遇真则真 逻辑!:真假互换 逻辑表达式的值:1(真)、0(假) 例如:3>4 结果是:0 3&&4结果是:1 !3&&4结果是:0 0||3结果是:1 注意:在求解逻辑与(&&)表达式时,若&&运算符左边表达式的值为0(假),则不再进行&&右边表达式的运算,且将整个&&表达式的值定为0;在求解逻辑或(||)表达式时,若||左边表达式的值为非0值(真),则不再进行||右边表达式的运算,且将整个逻辑||表达式的值定为1(真)。 2.if语句 2.1.if语句格式: 1) if(表达式) 2)if(表达式) 语句1; 语句1; else 语句2; 称为:全if 单if 注意: (1)if 后的表达式必须用()括起,else后没有表达式。 (2)if和else都只能控制紧跟它的一条语句,若要控制多条语句,必须用一对 {}括起构成一条复合语句。 2.2执行方式: 2.21 if语句的执行方式:首先判断表达式的值是否为“真”,若“真”,则执 行语句部分。如果表达式的值为“假”,则“跳过”语句部分执行if语句后面的其它语句。 2.22 if-else语句的执行方式:首先判断表达式的值是否为“真”,若“真”, 则执行语句部分。如果表达式的值为“假”,则执行else语句后面的语句。 例1:main() {int m=5; if(m++>5) printf(“m=%d”,m); else printf(“m=%d”,m--); } 例2:main() {int m=5; if(++m>5) printf(“m=%d”,m); else printf(“m=%d\\n”,m--); printf(“m=%d”,m); } 2.3 if 语句的嵌套 if(表达式1) if(表达式2) 语句1; else 语句2; else if(表达式3) 语句3; else 语句4; else总是与前面最近的且未配对的if语句配对,组成一对if-else语句。 if(表达式1) if(表达式2) 语句1; else if(表达式3) 语句2; else 语句3; 第一个else语句有的同学会把它误以为和第一个if配对,但是实际的情况是和第二个if语句配对,即: if(表达式1) if(表达式2) 语句1; else if(表达式3) 语句2; else 语句3;

