版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、程序设计基础复习,目录,1. 基本要求 2. 基本内容,1. 基本要求,熟练掌握C 语言的基本知识 具备基本的C程序设计能力,能熟练地阅读、理解和编制简短的C程序。,2. 基本内容,2.1 数据的定义 2.2 运算及流程控制 2.3 程序结构和函数 2.4 数据的输入和输出 2.5 命令行参数和编译预处理 2.6 常用算法,2.1 数据的定义,数据的定义包括数据类型和存储类别 1、基本类型 基本类型指整型、实型和字符型(主要是int, float, double, char;还包括long, unsigned, short),(1) 常量 熟练掌握各种表示形式的整数、实数、和字符(串)常量,符
2、号常量的定义和使用。 包括整数的十进制、八进制和十六进制的表示形式、长整型常量的表示形式,实数的浮点表示法和科学记数法,字符的转义序列,常用符号常量的含义(如NULL、EOF等),(2) 变量 熟练掌握变量的定义和初始化 printf(”%x,%o“,16,10); printf (%d, %o, %x, 0 x12, 12, 012); printf(%d,%dn,NULL,EOF);,2、构造类型 构造类型包括数组和结构 (1) 数组 熟练掌握一维和二维数组的定义和初始化,数组元素的引用。 包括一维字符数组和字符串,二维字符数组和字符串数组,数组定义为 int a32=1, 2, 3, 4
3、, 5, 6,数组元素 a21 的值为6。 不正确的赋值或赋初值的方式是_。 A、char str=string; B、char str7=s, t, r, i, n, g; C、char str10;str=string; D、char str7=s, t, r, i, n, g, 0; 表达式strcmp(“box”, “boss”) 的值是一个_. A、正数 B、负数 C、0 D、不确定的数,#include int a34=1,2,3,4,5,6,7,8,9,10,11,12; void main() int s,k; for(s=0,k=0; k3; k+) s+=akk; prin
4、tf(%d-,s);,for(s=0,k=0; k3; k+) s+=ak3-k; printf(%d-,s); for(s=0,k=0; k4; k+) s+=*(a1+k); printf(%dn,s); ,将输入的 n 个字符串连接成1个字符串后输出. #include #include void main() char str1020, string200; int k, n; scanf(%d, ,(2) 结构 熟练掌握结构类型的定义,结构变量的定义和初始化,结构变量成员的引用。,3、指针 (1) 熟练掌握指针和地址的概念 (2) 熟练掌握指针变量的定义和初始化 (3) 熟练掌握通过
5、指针引用指向实体,9,a,int *pa, a; pa=,pa,若变量已正确定义并且指针p已经指向某个变量x,则(*p)+相当于_。 A、p+ B、x+ C、*(p+) D、,下列语句定义pf为指向float类型变量f的指针,_是正确的。 A、float f, *pf = f; B、float f, *pf = ,4、构造类型和指针类型的混合定义及应用 (1) 熟练掌握指针、数组和地址间的关系 int c =1, 3, 5; int *k=c+1; printf(%d, *+k); char str =hellotworldn; printf(%d, %cn, sizeof(str), *(s
6、tr+10);,(2) 熟练掌握指针数组 写出下列程序段的输出结果。 char *st =one,two,three,four; printf(%sn,*(st+3)+1);,(3) 熟练掌握结构数组 输入某班50位学生的姓名及数学、英语成绩,计算每位学生的平均分;然后输出平均分最高的学生的姓名及其数学和英语成绩。 #include #define SIZE 50 struct student char name10; int math,eng; float aver; ;,void main() struct student sSIZE; int k,sub=0; for(k=0; kssu
7、b.aver ) sub = k; printf(%10s%3d%3dn,,ssub.math,ssub.eng); ,(4) 熟练掌握结构指针 (5) 掌握结构中含指针或数组 (6) 掌握嵌套结构 (7) 掌握指向指针的指针(二级) (8) 单向链表 掌握单向链表的建立和遍历 了解插入和删除单向链表中的一个节点,+p-str中的+加在_。 struct int len; char *str; *p; A、指针str上 B、指针p上 C、str指的内容上 D、以上均不是,main( ) struct st int x, y; a4=10,20,30,40,50,60,70,8
8、0; struct st *p=a; printf(%d, p+-x); printf(%d, +p-y); printf(%dn, (a+3)-x); ,5、空类型 void 掌握空类型的定义和使用,6、变量的存储类别、作用域和生存期 (1) 掌握变量的存储类别 auto 自动型、static 静态型、extern 外部参照型 (2) 掌握全局变量和局部变量 注意区分:自动局部变量和静态局部变量、全局变量和静态全局变量、外部变量,C语言中,形参的缺省的存储类说明是_。 A、auto B、static C、register D、extern,对于以下函数f,计算f(f(2)的值。 int f(
9、int x) static int k=0; x+=k+; return x; ,2.2 运算及流程控制,1、基本运算 熟练掌握运算符的功能 熟练掌握运算符的优先级、结合性和目数 熟练掌握隐式类型转换和强制类型转换 2、表达式 熟练掌握各类表达式的组成规则和计算过程,() - . ! + - - (类型名) * ,判断i和j至少有一个值为非0的表达式是_。 A、 i!=0 x1=3/2; x2=x1/2; printf(%d, %.1f, (int)x1, x2) ;,表达式 sizeof(“key”) 的值是_。 A、1 B、2 C、3 D、4 static char s =student;
10、 printf(%d,%cn,sizeof(s),*(s+2); 若a是整型变量,表达式 (a a ) 等价于_。 A、a B、1 C、0 D、2 表达式 (722 ) 的值是_。,下列运算符中,优先级最低的是_。 A、* B、!= C、+ D、= 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为_。 A、算术运算、赋值运算、关系运算 B、关系运算、赋值运算、算术运算 C、算术运算、关系运算、赋值运算 D、关系运算、算术运算、赋值运算,3、语句 (1) 熟练掌握表达式语句、空语句、复合语句; (2) 熟练掌握简单控制语句 break、continue、return (3)
11、熟练掌握选择控制语句 if、switch (4) 熟练掌握重复控制语句 for、while、dowhile,C 语言程序的三种基本结构是顺序结构、选择结构和_结构。 A、循环 B、递归 C、转移 D、嵌套,写出下列程序段的输出结果。 char c,k; c=b; k=4; switch(c) case a: k=1; case b: k=2; case c: k=3; printf(%dn,k);,写出下列程序段的输出结果。 int k, x; for (k=0, x=0; k=9,输入12345#后,写出下列程序的输出结果。 void main() char c; for(c=getchar
12、(); getchar()!=#; c=getchar() putchar(c); int k ; char *s = “ABC”; for( k=10; k != 0; k- ) ; printf ( %d, k ); while( *s+ ) putchar( *s );,2.3 程序结构和函数,1、程序结构 熟练掌握main函数与其他函数之间的关系 包括标准库函数和自定义函数,2、函数的定义 (1) 熟练掌握函数定义的ANSI C格式 (2) 熟练掌握函数的参数(形式参数和实在参数)及参数传递,包括指针作为函数的参数 (3) 熟练掌握函数的返回值,包括指针作为函数的返回值,要调用数学函数
13、时,在#include命令行中应包含_。 A、 ”stdio.h” B、 ”string.h” C、 ”math.h” D、 ”ctype.h” 在C语言程序中,若对函数类型未加显式说明,则函数的隐含类型是int.,int z; void p(int *x, int y) +*x; y-; z=*x+y+z; printf(%d, %d, %d#, *x, y, z); ,void main() int x=1, y=5, z=9; p( ,3、函数的调用 (1) 函数调用的一般格式 熟练掌握通过函数名调用函数,了解通过函数指针调用函数 (2) 掌握函数的嵌套调用和递归调用,int f(int
14、 k) return (k0)?1:f(k-2)+2); ,(3) 熟练掌握标准库函数的调用 常用数学函数: cos、sqrt、pow、exp、fabs、log、log10等 常用字符函数: isalnum、isalpha、isdigit、islower、toupper等 常用字符串函数: strcpy、strcmp、strcat、strlen等,输入m和n(mn0)后,计算下列表达式的值并输出。 m! n!(m-n)! 要求将计算阶乘的运算写成函数fact(n),函数返回值的类型为float。,#include float fact(int k); void main() int m,n;
15、scanf(%d%d, ,float fact(int k) float y=1; int i; for(i=2;i=k;i+) y*=i; return y; ,2.4 数据的输入和输出,1、文件 熟练掌握文件的基本概念 2、标准文件的输入和输出 熟练掌握常用输入输出函数:scanf、printf、getchar、putchar、gets、puts等,3、缓冲文件系统(文本文件) (1) 熟练掌握文件的打开和关闭 常用函数:fopen和fclose (2) 熟练掌握文件的基本读写操作 常用函数:fscanf、fprintf、fgetc、fputc、fgets、fputs等 (3) 熟练掌握文
16、件的状态检测 常用函数:feof等,统计当前目录下文本文件data.txt中字符 $ 出现的次数,并将统计结果写入当前目录下的文本文件res.txt。 #include void main() FILE *fp1, *fp2; char ch; int count=0; if(fp1=fopen(data.txt,r)=NULL) printf(不能打开文件data.txt!n); exit(0); ,if(fp1=fopen(res.txt,w)=NULL) printf(不能打开文件res.txt!n); exit(0); while(ch=fgetc(fp1)!=EOF) if(ch=$) count+; fprintf(fp2,%d,count); fclose(fp1); fclose(fp2); ,2.5 命令行参数和编译预处理,1、命令行参数(argc、argv)的说明、含义和使用。 执行程序find nx ould text.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 腻子维修合同范本
- 车位买卖规范协议2024年
- 化物业承包服务协议指南2024
- 2024远洋货物运输协议模板
- 维修楼盖合同范本
- 2024年度商业门头建设协议
- 2024新款防盗安全门销售协议
- 2024专业服务承包协议样本
- 2024年固定期限员工劳动协议范本
- 服装电商人员劳动合同范本
- 《1.6.1 余弦定理》说课稿
- 急诊医学测试试题及答案
- 2024年广州铁路(集团)公司招聘468人易考易错模拟试题(共500题)试卷后附参考答案
- 第四单元两、三位数除以一位数(单元测试)-2024-2025学年三年级上册数学苏教版
- 2024年保安员证考试题库及答案(共240题)
- 人教版一年级上册数学期末试题及答案
- 浙江省9+1高中联盟2023-2024学年高一上学期11月期中英语试题 含解析
- 2025届高三化学一轮复习 第13讲 铁盐、亚铁盐及其转化 课件
- 【电商企业跨国并购的绩效探析案例:以阿里巴巴并购Lazada为例(论文)14000字】
- 2023年11月软考中级系统集成项目管理工程师下午真题(第二批)
- 2024年江苏省盐城射阳县部分村(居)宣传文化管理员招聘57人历年高频难、易错点500题模拟试题附带答案详解
评论
0/150
提交评论