MIT麻省理工学院的C语言实用程序设计课程涉及七个模块的核心主题,其中第六模块又分了两个小的单元。下面我们介绍这门课程的重点主题内容,同时分享一些课程相关的作业题目,备考的小伙伴可以练起来咯~
一、重点内容
主题1:编写、编译和调试程序;预处理宏;c文件结构;变量;功能和问题陈述;从函数返回
主题2:类型、运算符、表达式
主题3:控制流、函数、变量范围、静态和全局变量、I/O: printf和scanf、文件I/O、字符数组、错误处理、标签和goto
主题4:指针、数组、字符串、搜索和排序算法
主题5:链表,树
主题6A:指针对指针、多维数组、堆栈和队列
主题6B:函数指针,哈希表
主题7:使用和创建库、B树和优先级队列
二、作业题
问题1:
(a) C中的花括号表示什么?为什么用花括号括住函数体是有意义的?
(b)描述文字值7、“7”和“7”之间的区别。
(c)考虑语句double ans = 10.0+2.0/3.0−2.0 * 2.0;
重写此语句,插入括号以确保在求值时ans = 11.0。
问题2:
考虑这个陈述:
双ans = 18.0/²(2+1);
对于下面四个版本的macro squared()函数,分别写出ans的对应值。
1. #define squared(x) x*x
2. #define squared(x) (x*x)
3.#define squared(x) (x)*(x)
4. #define squared(x) ((x)*(x))
问题3:
用你最喜欢的文本编辑器和编写课堂上描述的“你好,6.087学生”程序
编译并执行它。提交打印输出或屏幕截图
•用于编译程序的命令
•用于执行程序的命令(使用gdb)
•程序的输出
问题4:
下面的代码行按适当的顺序排列后,将输出简单的消息“All”
你们的基地是属于我们的。”
1. return 0;
2. const char msg[] = MSG1;
3. }
4. #define MSG1 "All your base are belong to us!"
5. int main(void) {
6. #include
7. puts(msg);
问题5:
编写逻辑表达式,测试给定的字符变量c是否为:
• lower case letter
• upper case letter
• digit
• white space (includes space,tab,new line)
问题6:
使用优先级规则,计算以下表达式并确定变量表的值(不运行代码)。也可以使用括号重写它们,使顺序显式。
•假设(x=0xFF33,MASK=0xFF00)。表达式:c=x & MASK ==0;
•假设(x=10,y=2,z=2;)。表达式:z=y=x++ + ++y * 2;
•假设(x=10,y=4,z=1;)。表达式:y>>= x&0x2 && z
以上是全部内容分享,希望对大家有用。学业有难题,欢迎大家咨询留求艺C语言课程辅导老师,获取一对一在线课程补习以及作业讲解!