课程简介

你有没有好奇过:计算机为什么能够进行计算?计算机程序是怎样运行的?你是否想知道:计算机未来可能的发展趋势有哪些?程序是如何编写出来的?如何学习程序设计语言?程序设计语言的基本成分有哪些?《计算导论》这门课将帮助你解决这些疑惑。 学完这门课,你将能够解释计算机和程序的基本运行原理以及它们的特性,向你的朋友讲述计算机的历史和发展趋势;同时,你也将充分“热身”,迎接“计算机程序设计语言”的学习!

课程大纲

第一章   计算机的基本原理

第二章   计算机的历史与未来

第三章   程序运行的基本原理

第四章   感性认识计算机程序

第五章   从现实问题到计算机程序

第六章   C++语言的基本成分–数据成分

第七章   C++语言的基本成分–运算成分

第八章   C++语言的基本成分–控制成分

第九章   C++程序中的数组

第十章   字符数组与字符串

第十一章   C++程序中的函数

第十二章   嵌套、递推、递归

第十三章   可爱的指针(1)

第十四章   可爱的指针(2)

第十五章   结构体与链表

第十六章   程序设计基础总结


课程说明

本课程的内容针对“信息科学技术”专业的一年级本科生而设,我们不要求也不假设选课学生有任何信息科学技术相关专业的知识背景,也不要求有任何的程序设计知识背景。对于具有一定专业知识背景或具有一定程序设计基础的同学,可以选择跳过相应章节,选择有兴趣的章节学习。


本课程的教学目标有二:其一,帮助学习者建立起“学习计算机科学技术知识所需的基本知识背景”;其二,帮助学习者“掌握计算机程序设计的基础知识”,培养学习者“独立设计计算机程序解决问题”的基本技能。



参考资料

基本资料:

主要参考本课程所提供的讲义资料,以及来自 http://ica.openjudge.cn/  的相关练习题。

参考教材:

[1] C++程序设计,谭浩强,清华大学出版社,2006年

[2] 《程序设计基础》(第二版),吴文虎,清华大学出版社,2006年7月 参考教材

[3] Computer Systems -A Programmer's Perspective, Randal E.Bryant, David O'Hallaron, Prentice Hall, 2002

[4] C++ Programming Today (2 edition), Barbara Johnston, Prentice Hall, 2007


拓展阅读

拓展阅读

其他

其他

主讲教师

李戈   

李戈,北京大学信息科学技术学院软件研究所副教授,教育部高可信软件技术重点实验室(北京大学)成员,北京大学元培学院导师。当前研究领域包括软件工程、Web知识提取、知件工程等。自2006年留校任教以来,主讲“计算概论A”等课程,2008年“计算概论A”课程被推选为“国家级精品课程”。他曾获得北京大学青年教师教学基本功比赛第一名,北京市青年教师教学基本功比赛比赛一等奖,北京市高等院校计算机基础教育研究会教学交流“特等奖”。

课程助教

  • 孙晓巍

相关课程推荐

  • 正在进行
    人群与网络
    以社会学与经济学若干经典问题为载体,以计算机科学的典型思维方法为工具,学习与体会两类学科知识的交叉与互动。涉及的话题包括社会网络、关系平衡、匹配市场、拍卖市场、信息级联、网络效应、流行性、新事物的传播、小世界现象等。
  • 正在进行
    理论计算机科学基础
    通过这门课程的学习,学生将了解计算理论的基础知识,掌握有效计算的概念。本课程的教学内容包括:形式语言与自动机理论、可计算性理论、计算复杂性理论等三个部分。这些内容分别回答下列问题:(1)有哪些计算装置?它们的能力如何?(2)什么是计算?哪些问题是(不)可计算的?(3)什么是有效计算?哪些问题是(不)可有效计算的?通过这门课程的学习,学生将了解计算理论的基础知识,掌握有效计算的概念。
  • 正在进行
    操作系统原理
    《操作系统原理》是针对计算机科学技术专业三年级本科生开设的一门专业基础课程。本课程着重学生系统观的培养,通过重点讲述操作系统的内部结构、工作原理及典型技术的实现,使学生建立起对操作系统的整体及各个功能模块的认识,从而系统掌握计算机的专业知识,进一步提升学生的软件开发能力乃至系统软件开发能力。

恭喜,报名成功

进入学习中心

恭喜,报名成功

确定

请进入开课界面预览

确定

X

请去您的邮箱验证

还没收到验证邮件?

1. 试试去广告邮件、垃圾邮件目录看看

2. 再次发送验证邮件

对不起,班次容量已满

请报名下一班次

知道了~!

对不起,您没有操作权限

知道了~!