C程序设计期末测试要点
C程序设计期中测试要点 (具体细节 还需大家认真看书) 作为一门编程语言考试,第一个要掌握的就是语法,第二个是篡法O 同学们应先把基本的语法知识整理一下。 至于算法,第五章当中讲到的累加,统让,求最值等必须掌握。 寿周翔 includestdio. h void main { i nt a, b, sum; 一、一个C语言程序的基本框架(以计算ab之值为例) //编译预处理指令 //定义主函数 〃函数开始 //程序申明部分定义变量 printf( “键盘输入a和b的值\n);〃文字提示 scanf( “%dd a, b) ; //输入是注意符号 别漏写 sumab; pr intf sumd\n” , sum ; //输出结果 }〃函数结束 二、数据的表现形式及其运算 1、一些常用转义字符 \n 换行 当前位置到下一行开头 \f 换页 当前位置到下一页开头 \t 水平制表符 当前位置到下一个tab \r 回车 当前位置到本行开头 2、标示符 使用规则英文字母、数字0-9、下划线 注必须以英文字母或下划线开头(大小写敏感) 不与32关键字相同 3、定义变量必须在第一条执行语句前 4、数据转换(自动) double float long int Char 双精度 单精度 长整形 整形 字符 8字节 4字节 4字节 4字节 1字节 5、强制转换如int (3.2)得3 6、基本运算符自增自减运算符详见课本P52-53 另外a/bc如果a和b都是整数 则c定是整数。 7、常用格式控制字符串 d对应整型变量 f对应实型变量 c对应字符型变量 lf输入一个双精度型变量 三、数据的输入与输出 1、输入 1 scanf 函数 如scanf d”, a; 注scanf函数中%d要与a的数据类型相同,a前面的小心遗漏。 2 getchar 如chgetchar 0 ;只能输入一*字符型变量 即把一个字符赋值给ch 注在使用getchar 时注意对多输入的空格回车的接收 3 scnaf函数中用到的格式字符格式附加字符详见课本P76 2、输出 1 printf函数如printf “愿大家顺利通过期中测试\n; 2 putchar 即输出一字符 3 printf函数中用到的格式字符格式附加字符详见课本P74 *四、选择结构程序设计 1、if语句的一般形式 if表达式语句1 [else语句2]中括号部分可省略 if语句的不同形式 详见课本P89选择结构嵌套 详见课本P99-100 2、关系运算符逻辑运算符 详见课本P91和P93 3条件运算符和条件表达式 例max ab a b aba b”是一个条件表达式“是条件运算符 如果ab成立则maxa否则maxb 4、switch语句基本格式 switch 表达式 { case常量1语句1 case常量2语句2 case常量n语句n default 语句 n1 } 注上述case和常量之间要有一个空格,常量只能是整行变量或字符变量 每一个语句后面可加上“break; ”使每次只执行一个语句,否则会从一个可 执行的语句开始执行到下面每一个语句。 *五、循环结构程序设计 注一个循环结构程序要有循环变量初值、循环条件、循环变量增值 1 while语句实现循环 (基本结构) while (蓿环条件)//当循环条件成立时,执行循环体中的语句 循环体一 } 以下以一个统计型程序为例 〃输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。 by wqh ver 1. 0// includestdio. h void main() int a, b, c, d; char ch; aO;bO;cO;dO; wh i I e chgetchar \n ifch a; else if ch‘ a ch z | |ch A ch Z b; else ifch0ch9 C; else d; } print空格数€1个\n,a; pr intf 英文字d个侦,b; printfC数字d 个\n”,c; pr i ntf 其他字符1 个\n, d; 1 以下以一个求最值型程序为例 ver 1.0*/ includestdio. h void main float gradel, grade20; scanf grade1; while grade10 { if grade1grade2 grade2grade1; e I se ; scanf grade1; } pr i ntf 最高成绩为f\n,z, grade2; } 2、do whi I e语句实现循环 (基本结构) do { 循环体 } while (循环条件);//当循环条件成立时,执行循环体中的语句 以下以一个累加型程序为例 /*编程计算从1加至U100的和。by wqh ver1. 0*/ includestdio.h void main() { int i1, sum0; do { sumi; i; } while (i100); pr i ntf (sumd\n”, sum); } 3、for语句实现循环 (基本格式) for (循环变量赋初值;循环条件;循环变量增值) 循环体 以下以一个程序为例 /*1999年,一个老人说今年我的生日已过了, 40多年前的今天,我还 是个20多岁的青年,那时我的年龄刚好等于那年年份的四个数字之和。, 编程求老人是哪年出生的 by. wqh ver1. 0*/ incIude〈stdio. h void main { int n, a, b, c, d, sum; for n1950;n1958;n-F { an/1000; bn/10010; cn/1010; dn10; sumabcd; i fsum21sum29 break; else ; } pr intf 老人是d 年出生的.\n, n-sum; } 4、三种循环语句的比较 最简单方便的当然要数for语