2022年清华大学C语言程序设计考试复习提纲 .pdf
《2022年清华大学C语言程序设计考试复习提纲 .pdf》由会员分享,可在线阅读,更多相关《2022年清华大学C语言程序设计考试复习提纲 .pdf(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、清华大学 C语言程序设计考试复习提纲考试形式:上机考试考试题型:选择题,填空题( C语言 A) 、改错题、程序填空题、程序设计题考试宗旨:考查学生基本语法的掌握、程序分析、程序设计能力考试范围方式一、程序概念以及C语言的结构1、程序的基本结构、 C程序的构成结构化程序设计的三种基本结构:顺序结构、选择结构、循环结构一个程序有且仅有一个main 函数程序的执行总是从main 函数开始,在 main 函数结束语句以分号;结束注释的方法 /* */ 2、C语言的标识符合法标志符的规则1、首字母为下划线或者字母、由下划线、字母、数字构成正确的 _abc abc123 错误的 12e ab,c 2、标志
2、符不能是关键字:例如 if for case while int 等都不能作为标志符名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 33 页 - - - - - - - - - 3、C语言是区分大小写的,即if 是关键字, IF 不是关键字4、只有合法的标志符才可以作为变量名、函数名、数组名 int for;是错误的二、数据类型以及其运算1、数据类型整型常量的表示十进制:如 123 456 八进制:以 0 大头,后跟 0-7 的数如 012 034 是正确的 089 是错
3、的十六进制:以 0 x 打头,后跟 0-F (f ) 的数如 0 x12A 0 x34Fa 是正确的 0 x89G 是错的长整型数:整数后面加L 如 12L 浮点数的表示格式:尾数 E (e)整数如: 12.34e4 1.234e-3 是正确的 1.23e 是错的 1.23e3.2是错的转义字符名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 33 页 - - - - - - - - - char a = 99; n 表示回车字符只能是单个字符例如 abcde 是错误的xa
4、b 是正确的强制类型转换例:a=6.5、b=2.4,(int)a+b的值是_。sizeof() 求变量所占字节参数可以是变量名也可以是类型 int i;sizeof(int) sizeof(i) 求整型变量的字节数2、基本运算和算术表达式的求值整数相除结果是整数:例如: x=3 y=10 printf(%d,y/x ); 的结果是 3 % 要求两边是整数3、关系表达式:关系运算符、逻辑运算符、条件表达式的编写条件运算符当ch为d 时 ch=(ch=a&ch=z)?(ch-32):ch ch的值为D 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
5、 - - - - 名师精心整理 - - - - - - - 第 3 页,共 33 页 - - - - - - - - - 赋值表达式t=10;的两层含义:表达式的值为 =右边的值: 10 将=右边的值 10 赋给变量 t 例:while(t=-2) while 语句的条件的值为 -2 (真)注意=和=的区别:前者是赋值后者是比较两边的值相等条件表达式大写字母: A=c&c=Z 小写字母: a=c&c=z 数字字符 0=c&cb&ac x 是偶数 x%2=0 x 是某范围内的数 1x10 C语言表达式 1x&x10 x 是某个数的倍数:例如x 是 n 的倍数, x%n=0 逻辑值数值参与逻辑运算
6、时,非0 表示成真 , 0 表示假逻辑运算的结果参与其他运算时, 真表示成 1 假表示成 0 例如:b=7&(-1); b 为1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 33 页 - - - - - - - - - if(t=1) 条件满足 (7&2)+2 值为 1 +运算符例:已知 n=2,则执行 k=n+ 后 k=2 n=3 复合运算符 +=,-=,*=,/=等例:x=1,y=2 y*=x+2 y 的值为多少?4、数据的输入和输出printf函数%c ,%d,
7、%f 格式:例: printf(%c,65 ); 的结果是 A printf(%d,65 ); 的结果是 65 分析下面程序结果main( ) int k=22; printf(k=%d,k=%o,k=%xn,k,k,k); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 33 页 - - - - - - - - - putchar 函数和 getchar 输出字符 A putchar( A) 2、scanf 输入输入方式:注意输入列表是地址例如: int a10; fo
8、r(i=0;i10;i+) scanf(%d,ai);是错误的 for(i=0;i10;i+) scanf(%d,&ai);是正确的 for(i=0;i10;i+) scanf(%d,a+i);是正确的 for(i=0;i 2 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 33 页 - - - - - - - - - z=x2 上面的值分别是多少三、选择结构程序设计1、二分支选择结构的实现 if, else 语句、if语句分析如下程序 1和程序 2 从键盘输入 1 2
9、main() int a,b,s; scanf(%d %d,&a,&b); s=a; if(ab)s=b+3; s=s*s*s; printf(%dn,s); main() int a,b,s; scanf(%d %d,&a,&b); s=a; if(ab)s=b+3; else s=s*s*s; printf(%dn,s); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 33 页 - - - - - - - - - 掌握以下程序的实现3 个变量排序在多个变量中找最大、
10、最小值2 个变量的值互换分段函数判断是否是闰年2、多分支选择结构的实现:if , else if语句、 switch 语句、if语句的嵌套例如:分析下面程序main() int a = 5,b =- 6,c = 3; if(ab) if(b0) c=0; else c+; printf(%dn,c); else 总是和之前与其最近的且不带else 的 if配对switch 和 break 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 33 页 - - - - - - -
11、 - - 分析如下程序的结果分析程序#include int main () int x=1,a=2,b=0; switch (x) case 0: b+; case 1: a+; case 2: a+;b+; printf(a=%d,b=%d n,a,b ); return 0; 四、循环结构程序设计1、一重循环的编写例如:循环程序分析:main() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 33 页 - - - - - - - - - int n = 10;
12、while(n=4) n-; printf(%d,n); 判断循环次数#include int main() 2; 100) 3) continue; i=5) break; return 0; 掌握以下程序:计算阶乘名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 33 页 - - - - - - - - - f=1; for(i=n;i=2;i-) f*=i; 计算累加例如: 1+2+3+4+ ,10 1+1/2+1/3+1/4+ ,.1/n 1-1/2+1/3-1/
13、4+,.(-1)n+1/n 1/2+2/3+3/4+ ,+(n-1)/n 整数分解:逐位输出每位上的数字、求整数的位数从键盘输入逐个求累加、求平均值例如 按顺序读入 4 名学生 3 门课程的成绩,计算出每位学生的平均分并输出#include int main() int n,k; float score ,sum,ave; for(n=1;n=4;n+) sum=0.0; for(k=1;k=3;k+) scanf( “%f”,&score); sum+=score; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
14、 - - - - - - - 第 12 页,共 33 页 - - - - - - - - - ave=sum/4.0; printf(“NO%d:%fn ”,n,ave); return 0; 求 1,1,2,3,5,8 .数列求最大公约数判断一个数是否是素数求一个数的因子的和2、循环控制语句: break 、continue 语句main() int a,b; for(a=2,b=2;a=20) break; if(b%3=1) b+=4; continue; printf(%dn,a); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - -
15、- - - 名师精心整理 - - - - - - - 第 13 页,共 33 页 - - - - - - - - - 3、简单的二重循环程序输出金字塔图案: * * * * main() int i,j; for(i=1;i=4;i+) for(j=1;j=4-i;j+)putchar( ); for(j=1;j=2*i-1;j+)putchar(*); putchar(n ); 分析程序#include main() int i,j; for(i=4;i=1;i-) for(j=1;j=0;i-) ai=10-i; printf(%d%d%d,a2,a5,a8); 名师资料总结 - - -精
16、品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 33 页 - - - - - - - - - 数组逆置算法void reverse(int a,int n) int i,t; for(i=0;in/2;i+) t=ai;ai=an-1-i;an-1-i=t; 数组排序算法void sort(int a,int n) int i,j,t; for(i=0;in-1;i+) for(j=i+1;jn;j+) if(aiaj) t=ai;ai=aj;aj=t; 找最小值的下标值。int fun(int
17、 *a,int n) int i,j = 0,p; p = j; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 33 页 - - - - - - - - - for( i = j; i n; j+) if(ai ap)p=i; return(p); 找最小值。int fun(int *a,int n) int i,j = 0,p; p = a0; for( i = j; i n; j+) if(ai p)p=ai; return p; 数组元素求和、求平均值对数组的一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年清华大学C语言程序设计考试复习提纲 2022 清华大学 语言程序设计 考试 复习 提纲
限制150内