计算机硕士专业基础—C语言 赵海英 http://t.qq.com/flytianshan2012 http://c.koolearn.com/subject/zyk/jsj.jsp.

Slides:



Advertisements
Similar presentations
C语言程序设计 主讲教师 :张群燕 电话:
Advertisements

Introduction 基本概念 授課老師:蕭志明
第4章 條件判斷與迴圈 Java 2 程式設計入門與應用.
第6章 二叉树和树 前面的章节主要讨论的是线性结构,二叉树和树属于非线性的结构。遍历非线性结构比线性结构要麻烦。
第一章 C语言概述 计算机公共教学部.
项目五——校园一卡通程序功能模块化设计 5-1项目显示查询和退出函数设计.
编译原理上机实习
第三章 控制结构.
Linked List Operations
單向鏈結串列 Singly Linked Lists.
第6章 佇列(Queues) 6-1 佇列的基礎 6-2 佇列的表示法 6-3 環狀佇列 6-4 雙佇列.
程式設計 博碩文化出版發行.
struct 可以在同一個名稱下擁有多種資料型態。使用struct能讓資料的存取和處理更為靈活。
第11章 查找 主要知识点 查找的基本概念 静态查找表 动态查找表 哈希表.
佇列 (Queue).
資料結構 第5章 佇列.
C++程序设计 第二讲 清华大学软件学院.
补充内容 结构体 概述 定义结构体类型和定义结构体变量 结构体变量的引用 结构体变量的初始化 指针与结构体 用typedef定义类型的别名.
今天, AC 你 了吗? 2018/11/21.
结构体和共用体 2 梁春燕 华电信息管理教研室.
Chap 9 结构 9.1 构建手机通讯录 9.2 结构变量 9.3 结构数组 9.4 结构指针.
程序讲解 第一题: 将指定文件的m行到n行字符写到显示屏上,m和n值从键盘输入。 运行时输入及结果: please enter m,n:
第12章 樹狀搜尋結構 (Search Trees)
目录 第八章 数组 1 简单学生成绩管理系统的开发 2 一维数组 3 多维数组 4 字符数组 5 数组作函数参数.
STRUCTURE 授課:ANT 日期:2010/5/12.
计算概论 第十八讲 C语言高级编程 结构与习题课 北京大学信息学院.
Introduction to the C Programming Language
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。
第2章 线性表 线性表抽象数据类型 顺序表 主要知识点 单链表 循环单链表 循环双向链表 静态链表 设计举例.
第十章 C高级程序应用—链表* 10.1链表的基本概念 10.2单向链表 10.3双向链表 10.4应用举例.
第5章 堆疊(Stacks) 5-1 堆疊的基礎 5-2 堆疊的表示法 5-3 堆疊的應用 - 運算式的計算與轉換
第5章 堆疊(Stacks) 5-1 堆疊的基礎 5-2 堆疊的表示法 5-3 堆疊的應用 - 運算式的計算與轉換
第3章 堆栈和队列 堆栈 堆栈应用 队列 队列应用 优先级队列 主要知识点.
C语言 程序设计基础与试验 刘新国、2012年秋.
陈海明 副教授 信息学院 计算机系 电子信息类非计算机专业选修课 程序设计实践 陈海明 副教授 信息学院 计算机系
C++语言程序设计 第二章 C++简单程序设计.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
第13章 结构体的应用 13.1 了解由用户构造的数据类型 13.2 结构体类型说明及结构体变量 13.3 结构体数组
計數式重複敘述 for 迴圈 P
C Programming in Action
資料結構 第4章 堆疊.
第三章 链表 单链表 (Singly Linked List) 循环链表 (Circular List) 多项式及其相加
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
自我參考結構 (self-reference – 1)
第三章 链表 单链表 循环链表 多项式及其相加 双向链表 稀疏矩阵.
7.1 广义表的概念 广义表是n(n≥0)个数据元素组成的序列,其中每个数据元素或是单个数据元素(简称原子),或仍然是一个广义表 。
第五章 递归与广义表 递归的概念 递归过程与递归工作栈 递归与回溯 广义表.
第十章 用户自定义数据类型 目录 学生信息管理系统的开发 结构体数据类型的概述 结构体变量的使用 结构体数组
OOP6 結構Struct 黃兆武.
目录 9.1 结构体类型 9.2 共用体类型 9.3 枚举类型 9.4 类型声明符typedef 1.
C语言概述 第一章.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
程式結構&語法.
4 條件選擇 4.1 程式基本結構 循序式結構 選擇式結構 重複式結構 4-3
第 二 章 数据类型、运算符与表达式.
C语言复习2----函数.
本节内容 字节对齐.
Chap 5 函数 5.1 计算圆柱体积 5.2 使用函数编写程序 5.3 变量与函数.
演算法時間複雜度 (The Complexity of Algorithms)
C++语言程序设计教程 第2章 数据类型与表达式 第2章 数据类型与表达式 制作人:杨进才 沈显君.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
資料結構簡介 綠園.
第二章 类型、对象、运算符和表达式.
程序设计基础.
#include <iostream.h>
第二章 Java基本语法 讲师:复凡.
第七章  数 组.
本节内容 结构体数组 视频提供:昆山爱达人信息技术有限公司.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
Presentation transcript:

计算机硕士专业基础—C语言 赵海英 http://t.qq.com/flytianshan2012 http://c.koolearn.com/subject/zyk/jsj.jsp

方法:以C语言为主线,以考研综合课程为点,进行 穿针引线。 目的:两个 (1)掌握基础知识是考研专业是否取得高分一个关键。 (2)转型:非计算机专业——>计算机专业 方法:以C语言为主线,以考研综合课程为点,进行 穿针引线。

C语言与考研课程关系★★ C语言是数据结构的前导课 C语言是操作系统的工具和应用 C语言是计算机组成原理的辅助工具和表示形式

C语言授课内容★★ 共十章,结合考研例题,紧密结合,考前先准备。 例题/习题的精选考试应用 讲授要求:以有助于专业综合课程考试,表现在: (1)读题 (2)解题 (3)规范答题

授课目标: 考研基础范围+考研题型+规范答题+思考方法 以求“高分”为目标 零基础,前期充分准备 框架+执行过程+基本标志

C语言的组成结构 int count=1; main() { } void fun1() { int tmp1; } void fun2() int tmp1,tmp2,count; count=1; tmp1=count; tmp1++; count=tmp1; tmp2=count; tmp2=tmp2+2; count=tmp2; } int count=1; void fun1() { int tmp1; tmp1=count; tmp1++; count=tmp1; } void fun2() { int tmp2; tmp2=count; tmp2=tmp2+2; count=tmp2; main() { /*int count=1;*/ fun1(); fun2(); }

C语言的组成结构 main() 执行过程: 复合框架 主子调用(三个要点) 执行过程: 结构(三句话) int count=1; { int tmp1,tmp2,count; count=1; tmp1=count; tmp1++; count=tmp1; tmp2=count; tmp2=tmp2+2; count=tmp2; } 执行过程: 结构(三句话) int count=1; void fun() { int tmp1; tmp1=count; tmp1++; count=tmp1; } void fun2() { int tmp2; tmp2=count; tmp2=tmp2+2; count=tmp2; main() { /*int count=1;*/ fun1(); fun2(); } 执行过程: 复合框架 主子调用(三个要点)

C语言的组成结构 形式的标志: 执行的标志: 运算的标志 ++ -- = struct node { }; datatype data; () { } “ ” ‘ ’ \ \0 L % # 0x ; struct union enum 执行的标志: %s %c * & [ ] 运算的标志 ++ -- = struct node { datatype data; struct node *next; };

章节 标题 内容 适用课程 例题/习题 第一章 基础知识 数制及转换 计算机字长 内存与地址 计算机组成 计算机网络 操作系统 考研真题 第二章 C语言组成 C数据组成、数据及数据类型 数据结构 C语言考研 第三章 顺序结构程序设计 框架 语句 输入、输出 第四章 选择结构程序设计 if---else switch(){…}

章节 标题 内容 适用课程 例题/习题 第五章 循环结构程序设计 3种结构 双循环 break continue 数据结构 操作系统 计算机组成 考研真题 C语言考研 第六章 数组 一维数组 二维数组 字符串 第七章 函数与预编译 定义/调用/原型 分析过程 传值

章节 标题 内容 适用课程 例题/习题 第八章 指针 列指针 行指针 函数指针等 数据结构 链表 C语言考研 第九章 结构体 sturct类型 typedef 构造-定义-使用 计算机组成 考研真题 第十章 位运算/文件 打开/关闭 读写 指针定位/测试

数制及转换 以二进制为例 (单位、内存、ASCII、编码、地址等考点) (1)定义 (2)二进制与十进制的转换 (3)二进制应用 内存与地址

 2012-15.某计算机存储器按字节编址,采用小端方式存放数据。假定编译器规定int和short型长度分别为32位和16位,并且数据按边界对齐存储。某C语言程序段如下:   struct{   int a;   char b;   short c;   } record;   record.a=273;   若record变量的首地址为0xC008,则地址0xC008中内容及re-cord.c的地址分别为

 2012-15.某计算机存储器按字节编址,采用小端方式存放数据。假定编译器规定int和short型长度分别为32位和16位,并且数据按边界对齐存储。某C语言程序段如下:   struct{   int a;   char b;   short c;   } record;   record.a=273;   若record变量的首地址为0xC008,则地址0xC008中内容及re-cord.c的地址分别为 这是一道计算机组成的考研题

其首地址 为320(十 进制数 )。 请回答 下列问 题,要 求说明 理由 或给出 计算过 程。 2010-44. (12 分) 某计算 机的主 存地址 空间大小为 256M B,按 字节编 址。指令 Cache 和数 据 Cache 分离 ,均有 8个 Cache 行,每 个 Cache 行大 小为 64B,数 据 Cache 采用 直接映 射方式 。现有 两个功 能相同 的程 序 A 和 B,其伪代码 如下所 示: 假定 int 类型 数据用 32位补 码表 示,程 序编译 时 i, j,s u m 均分 配在寄 存器中 ,数 组 a 按 行优先 方式存 放, 其首地址 为320(十 进制数 )。 请回答 下列问 题,要 求说明 理由 或给出 计算过 程。 (1) 若不考 虑用 于 cache 一致性 维护和 替换算 法的控 制位, 则数 据 Cache 的总容 量为多 少? (2) 数组元 素 a[0][31]和 a [1][1]各自所 在的主 存块对 应的 Cache 行 号分别 是多少 ( Cache 行号从 0开 始)? (3) 程序 A 和 B 的 数据访 问命中 率各 是多少 ?哪个 程序的 执行时 间更短 ? 程序 A: int a[256][256] „„ int sum_array1() { int i, j, sum=0; for(i=0; i<256; i++) for(j=0; j<256; j++) sum += a[i][j]; return sum; } 程序 B: int a[256][256] „„ int sum_array2() { int i, j, sum=0; for(j=0; j<256; j++) for(i=0; i<256; i++) sum += a[i][j]; return sum; }

2010-44. (12 分) 某计算 机的主 存地址 空间大小为 256M B,按 字节编 址。指令 Cache 和数 据 Cache 分离 ,均有 8个 Cache 行,每 个 Cache 行大 小为 64B,数 据 Cache 采用 直接映 射方式 。现有 两个功 能相同 的程 序 A 和 B,其伪代码 如下所 示: 程序 A: int a[256][256] „„ int sum_array1() { int i, j, sum=0; for(i=0; i<256; i++) for(j=0; j<256; j++) sum += a[i][j]; return sum; } 程序 B: int sum_array2() return sum; 假定 int 类型 数据用 32位补 码表 示,程 序编译 时 i, j,s u m 均分 配在寄 存器中 ,数 组 a 按 行优先 方式存 放, 其首地址 为320(十 进制数 )。 请回答 下列问 题,要 求说明 理由 或给出 计算过 程。 (1) 若不考 虑用 于 cache 一致性 维护和 替换算 法的控 制位, 则数 据 Cache 的总容 量为多 少? (2) 数组元 素 a[0][31]和 a [1][1]各自所 在的主 存块对 应的 Cache 行 号分别 是多少 ( Cache 行号从 0开 始)? (3) 程序 A 和 B 的 数据访 问命中 率各 是多少 ?哪个 程序的 执行时 间更短 ?

C语言的线性表的链式存储结构 (动态创建、访问、插入、删除) 举例:输出一个链表中最大结点(数据域) 标志 结构体使用规则 链表遍历三要点 数据域 与指针域要分清 C语言的访问方式:四类 链表访问的特点

C语言的作用★★——软件设计师 ————2011上半年软件设计师下午试题 void sort(int n,int a[],int b[]) { int c[R],i; for(i=0;i< (1) ;i++) { c[i]=0; } for(i=0;i<n;i++) { c[a[i]]= (2) ; for(i=1;i<R;i++){ c[i]= (3) ; b[c[a[i]]-1]= (4) ; c[a[i]]=c[a[i]] -1;

C语言的作用★★——程序面试宝典 #include<stdio.h> main() { int b=3; Int arr[]={6,7,8,9,10}; Int *ptr=arr; *(ptr++)+=123; Printf(“%d,%d\n”,*ptr,*(++ptr)); } A、8 8 B、130 8 C、7 7 D、7 8

分析问题的能力: int fun(int t) { int f1,f2,f3; f1=0; f2=1; f3=f1+f2; while(f3<=t) { f1=f2; f2=f3; } return f3; 解决问题的能力: 求大于t的最小斐波纳契数列(Fibonacci Sequence)的数据

C语言小技巧: 1、C语言两类变量 内容值 地址值 2、指针变量的定义 类型名 *指针变量名; 3、指针变量的使用 定义且初始化后才能使用

祝同学梦想成真! 谢谢 谢谢! 有问题要咨询噢!