Q1:本课程的适用对象有哪些?
A1:本课程是涉及面最广的计算机公共课,适合作为第一门程序设计语言,适用于理工类各专业的在校学生学习。此外,本课程也适用于广大的程序设计爱好者学习参考。
Q2:为什么选择C语言?与C++语言有何关系?
A2:C语言从其诞生至今,一直广受编程爱好者及专业开发人员的青睐。它数据类型丰富,对计算机资源的操控能力强,程序执行效率高。无论是语言特性还是应用范围,C语言是最基础性的高级语言,学会了它再学其他的程序设计语言就很容易了。以C语言为基础,纵向可以继续学习数据结构与算法方向的相关知识,横向也可以为继续学习面向对象的C++或Java语言奠定基础。因此,C语言不失为计算机程序设计入门的合适语言。其实,C语言是C++语言的子集,C++语言对C语言的扩充主要体现在面向对象部分,因此,本课程内容可以理解为C++语言的非面向对象部分,相当于简化的C++语言。
Q3:本课程使用什么集成开发环境?
A3:现在基本上都是利用C++集成开发环境中来运行C语言程序,本课程也是利用C++的集成开发环境来介绍C语言。在教学过程中,使用Visual Studio(2010)和Dev-C++两种集成开发环境(课程中有详细的操作演示),但不妨碍大家使用别的开发环境(如Code::Blocks)或别的系统版本,因为在不同开发环境或版本中大部分的功能和基本的操作方法是一样的,当然也会有细微的差异,在实际使用时要注意区分。
Q4:学习本课程需要哪些先导知识?
A4:其实没有太多的要求,对于某些算法(如求定积分、矩阵计算)会涉及到一些数学概念,但都是基本的,通过课程讲解也能理解的;还有,课程中会用到十进制、二进制、十六进制等数制转换的知识,需要时可以看看“大学计算机”课程的相关内容,也可以直接在课程讨论区提问。
Q5:本课程的教学内容是如何组织的?
A5:学习程序设计涉及到程序设计方法和程序设计语言两方面的问题,本课程针对学习程序设计的重点和难点,围绕“如何编写程序”这个主线来组织教学内容,力争把从问题到算法,再到程序的变换过程讲清楚。不是罗列现成的程序,而是讲清楚程序是怎么来的,怎样才能得到程序。为了突出课程的主线,避免初学者陷入到繁琐的语法当中,课程内容不拘泥于语言的语法细节,而是把主要的语法知识教给大家,让大家在应用实践中掌握语言工具。课程中有大量的应用实例,采用自顶向下、逐步求精的设计思想,引导大家建立清晰明确的编程思路,提高程序设计能力,学会利用计算机解决问题的思维方式。