1、【课程信息】课程名称:C+程序设计课程编码:L131001前导课程:计算机导论、计算机基础课程说明:C+程序设计是为本科生开设的一门专业基础课程。通过本课程的学习,使学生能够掌握 C+程序设计的基本原理、有关算法的模型和程序的设计方法。通过对较复杂的程序范例的剖析,使学生掌握结构化程序设计方法与面向对象的程序设计方法,并学会运用 C +进行程序设计与开发的技巧。提高利用计算机语言分析问题和解决问题的能力,为学生应用开发和后续课的学习打下扎实的基础。任课教师:120123 - 黄超【录入】黄超【章节】第 1 章 C+基础知识【知识点】1、 C+程序的构成与书写形式;2、 基本数据类型,常量、变量
2、和表达式3、 C+的标准输入输出【单选题】1、在 C+中,源程序变为可执行程序的正确顺序应该是( ) 。A. 编辑、链接、编译、执行 B. 编辑、编译、链接、执行C. 编译、编辑、链接、执行D. 编译、链接、编辑、执行答案:B分值:2难度:1知识点:1评析:2、 要把高级语言编写的源程序转换为目标程序,需要使用( ) 。A. 编辑程序B. 驱动程序C. 调试程序D. 编译程序答案:D分值:2难度:1知识点:评析:3、下列关于 C+与 C 语言的关系描述中,错误的是( ) 。A. C 语言是 C+语言的一个子集B. C+与 C 语言是兼容的C. C+对 C 语言进行了一些改进D. C+和 C 语
3、言都是面向对象的答案:D4、下面为使用面向对象语言的正确理由是( ) 。A. 面向对象程序由三种基本结构组成,分别是顺序结构、选择结构和循环结构B. 程序语句比面向过程语言简单C. 面向对象程序设计可以设计为自行修改错误D. 面向对象程序很容易概念化答案:D分值:2难度:1知识点:评析: 5、以下选项中,合法的用户标识符是( ) 。A. longB. _2TestC. 3DmaxD. A.dat答案:B分值:2难度:1知识点:评析:6、下列描述中正确的是( ) 。A. 不是每个 C+程序都必须包含预处理命令#includeB. C+程序必须有 return 语句C. C+程序中的变量必须定义在
4、主程序内部D. C+程序中所使用的符号常量可以不进行定义答案:A分值:2难度:1知识点:评析:7、C+源程序文件的扩展名为( ) 。A. .CPPB. .CC. .DLLD. .EXE答案:A分值:2难度:1知识点:评析:8、cout 是 I0 流库预定义的( ) 。A. 类B. 对象C. 包含文件D. 常量答案:B分值:2难度:1知识点:评析:9、 C+对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是( ) 。A. 增加了一些新的运算符B. 允许函数重载,并允许设置缺省参数C. 规定函数说明符必须用原型D. 引进了类和对象的概念答案:D分值:2难度:1知识点:评析:10、下列
5、选项中,( ) 是不合法的标识符.A. ProgramB. Obj23C. doubleD. B_C_D答案:C分值:2难度:1知识点:评析:11、下列标识符中,不合法的用户标识符为( ) 。A. a!B. _intC. a_10D. PAd答案:A分值:2难度:1知识点:评析:12、只能向终端输出一个字符的函数是( ) 。A. pringf 函数B. putchar 函数C. getchar 函数D. scanf 函数答案:B分值:2难度:1知识点:评析:13、如果有整型量 int x = 5,执行情况 x += 1.9 后 x 的值为( ) 。A. 6B. 7C. 结果不确定D. 表达式非
6、法答案:A分值:2难度:1知识点:评析:14、已知 a=5,b=3,表达式 a+=a*=+b*3 的值为( ) 。A. 40B. 80C. 100D. 120答案:D分值:2难度:1知识点:评析:15、下列语句彼此等价的是( ) 。A. !(a 0)和!(a 0)B. !(a = b)和(a b) int main()int a = 7, b = 4, c = 6, d;cout b ? (a c? a : c):(b);答案:7分值:4难度:1知识点:评析:【程序改错题】选做【编程题】 选做【章节】 第 2 章 基本控制结构程序设计【知识点】1、算法的相关概念2、C+语句及应用3、C+程序的
7、阅读与设计、调试【单选题】1、结构化程序设计所规定的三种基本控制结构是( ) 。A. 顺序结构、选择结构、循环结构B. 输入、输出、处理C. for、while、switchD. 主程序、子程序、函数答案:A分值:2难度:1知识点:评析:2、当执行以下程序段时,循环体将执行( ).int main( )int y = 1;do y-; while (-y);A. 一次B. 两次C. 无限次D. 系统将提示有语法错误答案:C分值:2难度:1知识点:评析:3. while(!x)中的(!x)与下面( ) 条件等价.A. x=1B. x!=1C. x!=0D. x=0答案:D4、下面程序的输出结果是
8、( ) 。#includeusing namespace std;int main()int x = 4;docout using namespace std;void main( ) int x = 1, a = 0, b = 0;switch(x)case 0 : b+;case 1 : a+;case 2 : a+; b+;cout using namespace std;int main()int a = 7, b = 4, c = 6, d;cout b ? (a c? a : c):(b);答案:7分值:4难度:1知识点:评析:2、写出以下程序的输出结果#include using
9、 namespace std;int main()int a = 0,i;for(i = 1; i using namespace std;void main( )int n,a,b,c;for(n=100;nusing namespace std;void main()int m;for(m=100;musing namespace std;int main()int i,j;for (i=1;iint f(int b,int n)int i,r=1;for(i=0;ivoid fun(int num)coutusing namespace std;int fun(int n)static
10、int m=2;m=m+n;return m;int main( )int a=3,b=4;int x;x=fun(a);x=fun(b);coutusing namespace std;void fun() static int a=0;a+=2;coutusing namespace std;long fib(int n) if (n2)return (fib(n-1)+fib(n-2);elsereturn 2;int main() coutusing namespace std;int i=1;int main(void)int a=3;int b=-10;static int c=0;void other(void);coutusing namespace std;int fun(int x)