010_C++程序设计
010_C++程序设计-加试
湖南师范大学硕士研究生入学考试自命题考试大纲考试科目代码:[] 考试科目名称:C++程序设计一、考试形式与试卷结构1)试卷成绩及考试时间本试卷满分为100分,考试时间为180分钟。
2)答题方式答题方式为闭卷、笔试。
3)试卷内容结构(一)基本知识部分10%(二)面向过程的程序设计部分40%(三)面向对象的程序设计部分50%4)题型结构a: 单项选择题,20%b: 填空题,20%c: 解答题(包括编程题),60%二、考试内容与考试要求(一)基本知识1、C++的初步知识考试内容(1)C++语言的简史及特点;(2)简单的C++程序;(3)C++语言的基本组成;(4)程序的编辑、编译、连接和运行。
考试要求(1)了解C++语言的特点和基本概念;(2)了解简单的C++程序的构成;(3)初步熟悉编译程序所提供的开发环境;(4)掌握建立应用项目的方法;(5)掌握C++程序的编辑、编译、链接和运行的过程;2、数据类型与表达式考试内容(1)C++数据类型概述;(2)整型数据、字符型数据、实型数据;(3)常量与变量;(4)表达式和表达式中的类型转换;(5)运算符和表达式语句;(6)常用函数。
考试要求(1)掌握整型、字符型、枚举型、实型等基本数据类型的概念,熟练掌握这些类型的常量和变量的使用及其运算操作;(2)熟练掌握关系运算符的使用和关系表达式的求值、逻辑运算符的使用和逻辑表达式的求值;(3)了解运算符的优先级和结合性,掌握数值表达式的构造方法;(4)掌握表达式的副作用和表达式语句。
(二)面向过程的程序设计1、算法流程控制考试内容(1)控制结构(程序的结构与控制、数据的输入与输出);(2)条件分支结构;(3)循环结构;(4)break、continue语句和其他控制语句。
考试要求(1)熟练掌握数据的输入输出;(2)熟练掌握if语句和switch语句的使用,会在程序中实现单分支或多分支控制;(3)熟练掌握while,do...while和for这三种循环语句的结构和执行过程,会在程序中实现单重或多重循环控制,掌握continue语句和break语句的使用;(4)掌握单重或多重循环控制语句的实际应用。
c程序设计试题汇编第三版
c程序设计试题汇编第三版
《C程序设计试题汇编(第三版)》是清华大学出版社出版的图书,作者是谭浩强。
这本书包含全国计算机等级考试二级C语言的笔试试题汇编,以及参考答案。
每个题目都有详细的解析,以帮助读者更好地理解题目要求和解题思路。
以下是部分题目:
1. 已知int a[5] = {1, 2, 3, 4, 5};,则a[1]的值是 _______。
2. C语言中的注释不能嵌套,这是因为C语言中 _______ 。
3. 以下程序输出的结果是 _______ 。
4. 在C语言中,可以使用以下方式定义一个数组:int a[5] = {1, 2, 3, 4, 5};,以下对该数组初始化的描述错误的是 _______ 。
如需获取更多题目,建议购买《C程序设计试题汇编(第三版)》进行阅读。
C程序设计试卷及答案
C程序设计试卷及答案《c程序设计》考试试题(120分钟)一、单项选择题(每小题2分后,共60分后)?1.以下运算符中优先级最低的就是________。
a)<b)+c)&&d)!=2.c语言中的标识符只能由字母、数字和下划线组成且第一个字符________。
a)必须为字母b)必须为下划线c)必须为字母或下划线d)可以就是字母,数字或下划线中任一种3.推论char型变量ch与否为大写字母的恰当表达式就是________。
a)@a@<=ch<=@z@b)(@a@<=ch)and(@z@>=ch)c)(ch>=@a@)&(ch<=@z@)d)(ch>=@a@)&&(ch<=@z@)4.以下的for 循环________。
for(x=0,y=0;(y!=123)&&(x<4);x++);a)是无限循环b)循环次数不定c)执行4次d)执行3次5.putchar函数可以向终端输出一个________。
a)字符或字符变量值b)字符串c)整型变量表达式的值d)实型变量值6.设a,b,c都就是int型变量,且a=3,b=4,c=5,则下面的表达式中,值0的表达式就是________。
a)@a@&&@b@b)ac)a||b+c&&b-cd)!((a7.推论字符串a和b与否成正比,应采用________。
a)if(a==b)b)if(a=b)c)if(strcpy(a,b))d)if(strcmp(a,b))8.请阅读以下程序:main(){inta=5,b=0,c=0;if(a=b+c)printf(\elseprintf(\}以上程序________。
a)有语法错误不能通过编译b)可以通过编译但不能通过连接c)输出***d)输出$$$9.t为int类型,步入下面的循环之前,t的值0,while(t=l){??}则以下叙述中正确的是________。
C语言程序设计(第二版)习题参考答案
C语言程序设计习题参考答案习题 1一、判断题1.在计算机中,小数点和正负号都有专用部件来保存和表示。
2.二进制是由0和1两个数字组成的进制方式。
3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。
4.在整数的二进制表示方法中,0的原码、反码都有两种形式。
5.有符号数有三种表示法:原码、反码和补码。
6.常用字符的A S CII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。
解:1.F2.T 3.T 4.T 5.T 6.T二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是。
A. 原码B. 反码C. 补码D. 移码2.已知英文小写字母m的A SCII码为十进制数109,则英文小写字母y的AS CII码为十进制数。
A. 112B. 120C. 121D. 1223.关于ASCII码,在计算机中的表示方法准确地描述是。
A. 使用8位二进制数,最右边一位为1B. 使用8位二进制数,最左边一位为1C. 使用8位二进制数,最右边一位为0D. 使用8位二进制数,最左边一位为04.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。
A. X∧Y=1000B. X∨Y=1111C. X⊕Y=0011D. ¯Y=10005.下列叙述中正确的是()。
A.高级语言就是机器语言B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。
八位模型机设计
八位模型机设计||实验名称八位模型机设计课程名称计算机组成原理程序设计||专业班级:计算计科学与技术学生姓名:实验日期:2015年5月验证性、综合性实验报告应含的主要内容:一、实验目的及要求二、所用仪器、设备三、实验原理四、实验方法与步骤五、实验结果与数据处理六、讨论与结论(对实验现象、实验故障及处理方法、实验中存在的问题等进行分析和讨论,对实验的进一步想法或改进意见)七、所附实验输出的结果或数据设计性实验报告应含的主要内容:一、设计要求二、选择的方案三、所用仪器、设备四、实验方法与步骤五、实验结果与数据处理六、结论(依据“设计要求”)七、所附实验输出的结果或数据目录一、摘要.......................................................................................................... 错误!未定义书签。
二、前言.......................................................................................................... 错误!未定义书签。
三、设计目的、任务与内容.......................................................................... 错误!未定义书签。
设计目的.................................................................................................. 错误!未定义书签。
根据计算机组成原理课程所学知识,设计一个8位的模型计算机。
..... 错误!未定义书签。
设计任务.................................................................................................. 错误!未定义书签。
C语言程序设计(第二版)习题参考题答案
C语言程序设计习题参考答案习题1一、判断题1.在计算机中,小数点和正负号都有专用部件来保存和表示。
2.二进制是由0和1两个数字组成的进制方式。
3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。
4.在整数的二进制表示方法中,0的原码、反码都有两种形式。
5.有符号数有三种表示法:原码、反码和补码。
6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。
解:1.F 2.T 3.T 4.T 5.T 6.T二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是。
A. 原码B. 反码C. 补码D. 移码2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数。
A. 112B. 120C. 121D. 1223.关于ASCII码,在计算机中的表示方法准确地描述是。
A. 使用8位二进制数,最右边一位为1B. 使用8位二进制数,最左边一位为1C. 使用8位二进制数,最右边一位为0D. 使用8位二进制数,最左边一位为04.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。
A. X∧Y=1000B. X∨Y=1111C. X⊕Y=0011D. ˉY=10005.下列叙述中正确的是()。
A.高级语言就是机器语言B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。
A.生成可执行文件B.生成目标文件C.输出运行结果D.自动保存源文件7.下列叙述中不正确的是()。
A.main函数在C程序中必须有且只有一个B. C程序的执行从main函数开始,所以main函数必须放在程序最前面C. 函数可以带参数,也可以不带参数。
C语言程设计实验与案例周信东主编机试试卷010
C语言程设计实验与案例周信东主编机试试卷2010-2011学年第2 学期课程名称C语言程序设计适用年级10 考试时间60 分钟试卷编号:010考前准备:请在E盘根目录下建一个以自己学号命名的文件夹,试题中的所有程序所对应的工程目录都创建在学号文件夹下。
第1题:改错题(30分)要求:该程序文件中有1~5个错误,请改正程序中的错误,使程序能输出正确的结果。
不得增加行或删除行,也不得更改程序的结构。
否则为0分。
该C08.c程序的功能:计算S = 1! + 2! + ... + n!【C08.c】【评分标准】每一错误处改正正确后得分6分,否则不得分。
各处错误设置如下:#include "stdio.h"mian() /*(1)主函数名拼写错误,应改为:main() */ { int k , i, n ;long m , s;scanf ( "%d" , n ) ; /*(2)未加地址符,n应改为&n */m =0;for ( k=1; k<=n; k++ ){ s=0; /*(3)初值错误,应改为:s=1; */for( i=1; i<=k; i++) ; /*(4)去掉行末分号*/s*=i ;m+=s;}printf ( "%ld\n" , m ) /*(5)行末缺少分号*/}#include "stdio.h"void main () /*(1)主函数名拼写错误,应改为:main() */{ int k , i, n ;long m , s;scanf ( "%d" , &n ) ; /*(2)未加地址符,n应改为&n */m =0;for ( k=1; k<=n; k++ ){ s=1; /*(3)初值错误,应改为:s=1; */for( i=1; i<=k; i++) /*(4)去掉行末分号*/s*=i ;m+=s;}printf ( "%ld\n" , m ); /*(5)行末缺少分号*/}第2题:编程题1(30分)题目描述:从键盘输入n(n<=10)个整数,统计其中偶数的个数,并对输入的偶数从小到大排序输出 (30)测试用例:输入的整数为:3 6 18 256 45 8偶数个数为:4偶数由小大排序为:6 8 18 256要求:编程题对应的工程名为“prog1”,工程目录放在学号文件夹下。
《C_语言程序设计》课程中的思政元素探究
149Internet Education互联网+教育在职业院校的计算机课程中,《C 语言程序设计》课程的开设十分广泛,在锻炼学生的抽象思维、提高计算机知识修养、增强学生对后续课程的理解能力等方面有着不可或缺的作用[1]。
近年来教育改革不断深入,对学校的人才培养提出了更高的要求。
在教学中要坚持立德树人的教学思想,教师将思政工作贯穿于教学的全过程实现育人的目的。
《C 语言程序设计》课程主要采取案例驱动的教学模式,在案例中穿插思政元素,让学生切身体会、潜移默化地接受思想政治教育。
在C 语言教学中,循环控制语句的教学是其重要组成部分与重难点内容,引入一些有意义的程序案例,合理而深刻地融入思政元素,能够有效激发学生的学习兴趣,帮助学生快速理解和掌握相关知识点,让学生在获得知识与技能的同时实现思政教育。
一、C 语言教学内容思政元素探究(一)认识C 语言模块在回顾C 语言的发展历程时,结合MATLAB、微软、华为和抖音等相关热点事件,融入思政教学,培养学生的国家忧患意识,弘扬爱国情怀,鼓励学生努力学习,注重创新,打破国外技术垄断,研发拥有自主知识产权的高性能芯片、操作系统等,获得话语权,制定行业标准。
同时树立学生的“四个自信”,提升学生的民族自信心和自豪感,激起学生学习报国的理想情怀,培养学生的远大理想,为中华之崛起而读书,实现个人价值与社会价值的统一。
在学习C 语言特点与优势时,激发学生学习C 语言的兴趣,提高学生学好C 语言的信心,教育学生学会把握优势,发扬优点摒弃缺点,不断提升自己,实现人生价值。
在了解C 语言具有广泛的应用领域和广阔的就业前景时,激励学生踏踏实实学好技术,机会往往是留给有准备的人,程序员不能永远止步于程序员,要朝着工程师、架构师、分析师去努力,并且IT 行业不断有新事物新技术涌现,教育学生要树立终身学习的《C 语言程序设计》课程中的思政元素探究意识,不断与时俱进[2]。
(二)算法算法的设计,让学生明白解决问题不止一种方法,要学会多思考多探究,寻求效率更高更完美的解决方案,尽善尽美。
C_C++程序设计与上机指导010
格式化读写函数(fprintf (fprintf和 10.3.4 格式化读写函数(fprintf和fscanf)
fprintf和fscanf函数与 和 函数与printf和scanf函数的 函数与 和 函数的 功能相似。二者的区别仅在于读写对象不同。 功能相似。二者的区别仅在于读写对象不同。 printf和scanf函数的读写对象是键盘和显示器; 函数的读写对象是键盘和显示器; 和 函数的读写对象是键盘和显示器 函数的读写对象是磁盘文件。 而fscanf 和fprintf函数的读写对象是磁盘文件。 函数的读写对象是磁盘文件
1. 数据块读函数 数据块读函数fread()
函数功能:读指定文件中的数据块 函数形式:fread(buffer,size,count,fp); • 其中: • buffer:指针,指示读入文件数据的首地址。 • size:表示一个数据块的字节数。 • count:表示要读入多少个size字节的数据块。 • fp:文件指针
• • • • • • • • • • • typedef struct{ short level; unsigned char fd; unsigned char short bsize; unsigned char unsigned char unsigned short token; }FILE; /*缓冲区满或空的程度*/ flags; /*文件状态标志*/ /*文件名*/ fold; /*如无缓冲区,则不读取字符*/ /*缓冲区大小*/ *buffer; /*数据缓冲区位置*/ *curp /*当前位置指针*/ istemp; /*临时文件指示器*/ /*用于有效性检验*/
2. 字符串读函数 字符串读函数fgets
函数功能:从指定的文件中读一个字符串到字符数组中。 函数形式:fgets(字符数组名,n,文件指针); 其中:n是一个正整数,指定读出的字符串长度。读入n-1个字符 并在最后一个字符后加一个字符串结束标志&块读写函数(fread (fread和 10.3.3 数据块读写函数(fread和fwrite)
C语言程序设计实验指导
C语⾔程序设计实验指导C语⾔实验指导吴元斌编重庆三峡学院计算机科学与⼯程学院实验总体说明⼀、实验的⽬的学习C语⾔程序设计不能满⾜于学会C语⾔的语法规则,能看懂书上的程序,⽽应当熟练地掌握程序设计的全过程,即独⽴编写源程序、独⽴上机调试、独⽴运⾏程序和分析结果。
上机实验的⽬的,不仅仅是为了验证教材和讲课的内容,或者验证⾃⼰所编写的程序的正确与否。
实验的主要⽬的⾄少包括如下⼏点:1.加深对讲授内容的理解,尤其是⼀些语法规定。
通过实验来掌握语法规则是⾏之有效的⽅法。
2.熟悉所⽤的开发平台。
3.学会上机调试程序。
通过反复调试程序掌握根据出错信息修改程序的⽅法。
4.通过调试完善程序。
⼆、实验前的准备1.了解所⽤的计算机系统(包括C语⾔开发平台)的性能和使⽤⽅法。
2.复习和掌握与本实验有关的教学内容。
3.准备好上机所需的程序,切忌不编程或抄别⼈的程序去上机。
4.对程序中出现的问题应事先估计,对程序中⾃⼰有疑问的地⽅应先作上记号,以便上机时给予注意。
5.准备好调试程序和运⾏程序所需的数据。
三、实验过程中应注意的问题1.上机实验应⼀⼈⼀组,独⽴实验。
2.上机过程中出现的问题,⾸先⼒争⾃⾏解决,若不⾏可求助于同学和⽼师。
尤其对“出错信息”,应善于分析判断,找出出错的⾏,然后检查该⾏或其上⼀⾏。
3.记录好上机过程中出现的各种问题和解决的⽅法。
4.上机实验平台的使⽤⽅法见附录A和附录B。
5.上机结束后,应及时写出实验报告(主要内容:题⽬、程序清单与结果、)。
四、完成实验报告实验报告包括以下内容:1.实验⽬的2.实验内容3.程序清单、运⾏结果4.调试过程记录5.总结经验与教训:对运⾏结果的分析,以及本次调试程序所取得的经验。
实验⼀C语⾔编程初步⼀、⽬的和要求1.熟悉Visual C++ 6.0开发环境(或Eclipse+MinGW),掌握编辑、编译、连接和运⾏C程序的⽅法。
2.通过运⾏简单的C程序,初步理解C源程序的特点和编程⽅法。
C语言程序设计习题库答案
C 语言程序设计(第三版)习题库1、设圆半径r=,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。
请编程序。
#include <>main(){float r,h,C1,Sa,Sb,Va,Vb;scanf(__”%f ”__,&r);scanf(”%d ”,__&h_);;C1=2**r;Sa=*r*r;Sb=4*Sa;Va=4**r*r*r/3;Vb=Sa*h;printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb);}2、输入一个华氏温度,要求输出摄氏温度。
公式为 c=5(F-32)/9输出要求有文字说明,取位2小数。
#include <>main(){float F,c;scanf("%f",&F);____c=5*(F-32)/9______;printf("c=%.2f",c);}3、有一函数:⎪⎩⎪⎨⎧≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。
#include <>main(){int x,y;printf("输入x :");scanf("%d",&x);if(x<1) { /* x<1 */y=x;printf("x=%3d, y=x=%d\n",x,y);} else if (____x<10_______){ /* 1≤x -10 */_____y=2*x-1_______;printf("x=%3d, y=2*x-1=%d\n",x,y);} else{ /* x≥10 */y=3*x-11;printf("x=%3d, y=3*x-11=%d\n",x# include ""main(){scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;}printf("%d",y);}# include ""main(){int x,y;scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;}printf("%d\n",y);}# include ""main(){int x,y;scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;}printf("%d",y);}scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;} # include "" main(){int x,y;scanf("%d",&x);y=x;else if(x>=1 && x<10)y=2*x-1;elsey=3*x-11;printf("%d",y);},y);}}4、给定一个不多于5位的正整数,要求:①求它是几位数;②按逆序打印出各位数字。
C语言程序设计习题参考答案
C 语言程序设计习题答案习题一 C 语言程序设计概述一、名词解释(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2(5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4(9)结构化的程序设计P9二、简述题1. 设计程序时应遵循哪些基本原则?P4答:正确性、可靠性、简明性、有效性、可维护性、可移植性。
2. 算法的要素是什么?算法具有哪些特点?答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。
3. 算法的表示形式有哪几种?答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。
4. 有哪三种基本结构?答:三种基本结构是:顺序结构、选择结构和循环结构。
5. 传统流程图与N-S 流程图最大的区别是什么?答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。
三、用传统流程图、N-S 图分别表示求解以下问题的算法。
1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。
2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。
3. 求1+2+3+…+100的值。
4. 求1×2×3×…×10的值。
5. 求下列分段函数的值。
6. 求100~200之间的所有素数。
7. 求一元二次方程ax 2+bx+c=0的根。
分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。
四、注释下面C 程序的各个组成部分。
main() /*主函数 */{ /*程序开始 */int a,k,m; /*定义三个用来存放整数的变量 */a=10; /*将整数10赋值给变量a */k=2; /*将整数2赋值给变量k */m=1; /*将整数1赋值给变量1 */a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */printf("%d\n",a); /*在屏幕上打印出变量a 的值 */} /*程序结束 */习题二 数据类型、运算符与表达式一、选择题1~10:BCDCB DDBCA11~20: ADDAA DBADC21~28: DABAD CDD3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5)二、填空题1.字母L 或字母l2.字符或%c 、整数或%d3.在程序运行过程中,其值可以在一定的范围内变化的量。
C程序设计习题
5.以下语句中不包含关键字的是______________。 A. x=sqrt(2); B. while(!x=0) x--; B. C. if(x<0) x=-x; D. return x; 6.执行以下程序时 #include<stdio.h> main() { int a; float b; scanf("%3d%f", &a, &b); printf("%d\t%f", a, b); } 若要求变量a和b分别从键盘获得输入值45和678.0,则以下 四种输入数据中,不能达到该要求的输入数据是 ________。(_代表“空格”键,<CR>代表“回车”键) A. 45_678<CR> B. 45<CR>678<CR> B. C. 45,678<CR> D.045678<CR>
11.在C语言中大部分执行语句都含有关键字。例如for语句含 关键字for。除这些语句外不含关键字的非空操作语句是 _________。 12.系统库函数scanf和gets在被调用执行时都可以读取从键盘 输入的一串数字字符,其中函数_________具有将读取的数字 字符串转换为整型数的功能。 13.已知int型变量的存储字节数为2,以下程序运行时的输出结 果是_______。 #include<stdio.h> main() { int a=3, b=2, c=7, d=6, e=8; long f=a*10000+b*1000+c*100+d*10+e; printf("%ld",f); }
19.设有如下声明和语句: int a=2, b,c=5; scanf("%d", &b); b=c--||scanf("%d", &c)&&a++; 该程序段执行时,若从键盘输入的数据是4_3(_代表空格),则 变量c的值为____________。 20.若有声明" int a=32767, b;",则在Turbo C 2.0系统中执行 语句" printf("%d", b=++a); "后输出结果是___________。
C语言程序的设计习题参考答案(第二版_杜友福)
C 语言程序设计习题答案习题一 C 语言程序设计概述一、名词解释(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2(5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4(9)结构化的程序设计P9二、简述题1. 设计程序时应遵循哪些基本原则?P4答:正确性、可靠性、简明性、有效性、可维护性、可移植性。
2. 算法的要素是什么?算法具有哪些特点?答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。
3. 算法的表示形式有哪几种?答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。
4. 有哪三种基本结构?答:三种基本结构是:顺序结构、选择结构和循环结构。
5. 传统流程图与N-S 流程图最大的区别是什么?答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。
三、用传统流程图、N-S 图分别表示求解以下问题的算法。
1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。
2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。
3. 求1+2+3+…+100的值。
4. 求1×2×3×…×10的值。
5. 求下列分段函数的值。
6. 求100~200之间的所有素数。
7. 求一元二次方程ax 2+bx+c=0的根。
分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。
四、注释下面C 程序的各个组成部分。
main() /*主函数 */{ /*程序开始 */int a,k,m; /*定义三个用来存放整数的变量 */a=10; /*将整数10赋值给变量a */k=2; /*将整数2赋值给变量k */m=1; /*将整数1赋值给变量1 */a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */printf("%d\n",a); /*在屏幕上打印出变量a 的值 */} /*程序结束 */习题二 数据类型、运算符与表达式一、选择题1~10:BCDCB DDBCA11~20: ADDAA DBADC21~28: DABAD CDDY= 3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5) 输入一个数给x X<=1 Yes no X<1 x<5 Yes no yes no Y=3x y=4x-1 y=5x+1 y=6-3x 输出s 的值 i =100 当i<=200时 n=2; flag=1; 当n< i 时i 能否被n 整除?yes no flag=0 n = n+1 flag=1?yes no输出i 的值i = i+1二、填空题1.字母L 或字母l2.字符或%c 、整数或%d3.在程序运行过程中,其值可以在一定的围变化的量。
C语言程序设计(第2版)_C语言程序设计(第2版)_[共10页]
21世纪高等学校计算机规划教材
C语言程序设计(第2版)
安俊秀主编
于华陈晓红副主编
相万让主审
人民邮电出版社
北京
内容提要
本书针对高等院校学生的特点和认识规律,全面、系统地介绍了C程序设计及应用的知识。
全书分为三篇,第一篇介绍C程序设计基础知识,包括C程序设计预备知识,程序设计基础,C语言的基本概念,顺序、分支和循环结构程序设计,函数和数组。
第二篇介绍C语言高级编程技术知识,包括编译预处理、指针、结构体、共用体和枚举类型、文件。
第三篇是C语言综合应用与实践,培养综合编程能力及程序编码的规范性。
包括程序编码规范、学生成绩管理系统等知识。
本书结构清晰、语言通俗易懂、实例丰富。
每章都配有同步练习,用于熟练和巩固所学知识。
附录中提供了相应的常用资料,以方便师生查阅相关内容。
本书可作为大学本科计算机和相关专业的“C程序设计”教材,也可供计算机培训班的学员学习参考。
21世纪高等学校计算机规划教材
C语言程序设计(第2版)
♦主编安俊秀
副主编于华陈晓红
主审相万让
责任编辑邹文波
♦人民邮电出版社出版发行北京市崇文区夕照寺街14号
邮编 100061 电子函件 315@
网址
北京铭成印刷有限公司印刷
♦开本:787⨯1092 1/16
印张:21.25 2010年9月第2版
字数:558千字 2010年9月北京第1次印刷
ISBN 978-7-115-23156-7
定价:37.00元
读者服务热线:(010)67170985 印装质量热线:(010)67129223
反盗版热线:(010)67171154。
《C程序设计》练习题4
《C程序设计》练习题一一.选择题1.以下选项中属于C语言的数据类型是()。
A. 复合型B. 双精度型C. 逻辑型D. 集合型2.以下说法中正确的是()。
A. C语言程序总是从第一个函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分3.选出下列标识符中不是合法的标识符的是()。
A. hot_doB. cat1C. _priD. 2ab4.下列描述中不正确的是()。
A.字符型数组中能存放字符串。
B.可以对字符型数组进行整体输入、输出。
C.可以对整型数组进行整体输入、输出。
D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
5.表达式:10!=9的值是()。
A. trueB. 非零值C. 0D. 16.能正确表示a和b同时为正或同时为负的逻辑表达式是()。
A.(a>=0||b>=0)&&(a<0 ||b<0) B.(a>=0 && b>=0)&&(a<0 && b<0) C.(a+b>0) &&(a+b<=0) D. a*b>07.C语言中,合法的字符型常数是()A.‘A’ B.“A” C. 65 D. A8.设有数组定义:char array[]=”China”; 则数组所占的空间是()A.4个字节 B.5个字节 C.6个字节 D.7个字节9.若变量c为char类型,能正确判断出c为小写字母的表达式是()A.’a’<=c<=’z’ B.(c>=’a’) || (c<=’z’)C.(‘a’<=c) and (‘z’>=c) D.(c>=’a’) && (c<=’z’)10.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是()A.printf(“x=%d\n”,x) B.printf(“x=%ld\n”,x)C.printf(“x=%8dl\n”,x) D.printf(“x=%LD\n”,x);11.指出下面正确的输入语句()A.scanf(“a=b=%d”,&a,&b);B. scanf(“%d,%d”,&a,&b) ;C.scanf(“%c”,c) ; D. scanf(“% f%d\n”,&f) ;12.C语言源程序的基本单位是()。
《C程序设计》练习及答案
《C程序设计》练习及答案选择题部分第一章c语言概述选择题1、一个c程序的继续执行从______。
a、本程序的main函数开始,到main函数的结束b、本程序文件的第一个函数已经开始,至本程序文件的最后一个函数的完结c、本程序文件的main已经开始,至本程序文件的最后一个函数的完结d、本程序文件的第一个函数已经开始,至本程序文件的main函数的完结2、以下描述恰当的就是______。
a、在c程序中main函数必须位于程序的最前面b、c程序的每行中只能写一条语句c、c语言本身没有输入输出语句d、在对一个c程序展开编程的过程中,可以辨认出注解中的错误3、以下描述不恰当的就是______。
a、一个c源程序可由一个或多个函数组成b、一个c源程序必须包含一个main函数c、c程序的基本组成单位是函数d、在c程序中,注解表明就可以坐落于一条语句的后面4、c语言规定,在一个源程序中,main函数的位置______。
a、必须在最为已经开始b、必须在系统调用的库函数的后面c、可以任一必须在最后5、一个c语言程序是由______。
a、一个主程序和若干子程序共同组成b、函数共同组成c、若干过程共同组成d若干子程序共同组成、、d(acdcb)第三章数据类型、运算符与表达式(红色显示的部分为参考答案)1、如果x、i、j和k都就是int型变量,则排序下面表达式后,x的值______。
x=(i=4,j=16,k=32)a.4b.16c.32d.522、设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是______。
a.7b.8c.6d.23、以下四组选项中,均不是c语言关键字的选项就是______。
a.defineiftypeb.getccharprintfc.includescanfcased.whilegopow4、下列四组选项中,均是c语言关键字的选项是______。
a.autoenumincludeb.switchtypedefcontinuec.signedunionscanfd.ifstructtype5、下列四组选项中,均是不合法的用户标识符的选项是______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南师范大学硕士研究生入学考试自命题考试大纲考试科目代码:[] 考试科目名称:C++程序设计
一、考试形式与试卷结构
1)试卷成绩及考试时间
本试卷满分为100分,考试时间为180分钟。
2)答题方式
答题方式为闭卷、笔试。
3)试卷内容结构
(一)基本知识部分10%
(二)面向过程的程序设计部分40%
(三)面向对象的程序设计部分50%
4)题型结构
a: 单项选择题,20%
b: 填空题,20%
c: 解答题(包括编程题),60%
二、考试内容与考试要求
(一)基本知识
1、C++的初步知识
考试内容
(1)C++语言的简史及特点;
(2)简单的C++程序;
(3)C++语言的基本组成;
(4)程序的编辑、编译、连接和运行。
考试要求
(1)了解C++语言的特点和基本概念;
(2)了解简单的C++程序的构成;
(3)初步熟悉编译程序所提供的开发环境;
(4)掌握建立应用项目的方法;
(5)掌握C++程序的编辑、编译、链接和运行的过程;
2、数据类型与表达式
考试内容
(1)C++数据类型概述;
(2)整型数据、字符型数据、实型数据;
(3)常量与变量;
(4)表达式和表达式中的类型转换;
(5)运算符和表达式语句;
(6)常用函数。
考试要求
(1)掌握整型、字符型、枚举型、实型等基本数据类型的概念,熟练掌握这些类型的常量和变量的使用及其运算操作;
(2)熟练掌握关系运算符的使用和关系表达式的求值、逻辑运算符的使用和逻辑表达式的求值;
(3)了解运算符的优先级和结合性,掌握数值表达式的构造方法;
(4)掌握表达式的副作用和表达式语句。
(二)面向过程的程序设计
1、算法流程控制
考试内容
(1)控制结构(程序的结构与控制、数据的输入与输出);
(2)条件分支结构;
(3)循环结构;
(4)break、continue语句和其他控制语句。
考试要求
(1)熟练掌握数据的输入输出;
(2)熟练掌握if语句和switch语句的使用,会在程序中实现单分支或多分支控制;
(3)熟练掌握while,do...while和for这三种循环语句的结构和执行过程,会在程序中实现单重或多重循环控制,掌握continue语句和break语句的使用;
(4)掌握单重或多重循环控制语句的实际应用。
2、函数
考试内容
(1)函数的定义;
(2)函数调用;
(3)函数调用中的参数传递;
(4)内联(inline)函数;
(5)函数的重载;
(6)函数与变量的作用域;
(7)宏定义;
(8)文件包含;
(9)条件编译。
考试要求
(1)掌握函数定义的格式,掌握函数原形的概念及其与头文件的关系;
(2)掌握两种形式的函数调用(表达式中的函数调用和语句中的函数调用),掌握函数调用过程中参数传递的原理;
(3)掌握全局变量和局部变量的使用;
(4)掌握函数重载的方法;
(5)掌握保留字inline的含义与使用;
(6)了解函数和变量的作用域与生存期;
(7)掌握和应用宏定义、条件编译、文件包含。
3、数组
考试内容
(1)一维数组;
(2)二维数组;
(3)字符数组与字符串;
(4)字符串函数。
考试要求
(1)掌握数组的基本概念;
(2)熟练掌握一维数组和二维数组的使用;
(3)掌握字符数组与字符串的关系以及字符串变量的表示;(4)会分析、编写利用数组进行数据存储和处理的简单程序。
4、指针
考试内容
(1)指针的概念和指针变量的定义;
(2)指针的基本操作;
(3)指针与数组;
(4)指针与字符串;
(5)指针与函数;
(6)返回函数的指针;
(7)函数main()的参数;
(8)new 和delete操作符;
(9)引用概念与操作、引用的应用。
考试要求
(1)熟练掌握指针、地址、指针类型、void指针、空指针等概念;
(2)熟练掌握指针变量的定义和初始化、指针的间接访问、指针的加减运算和指针表达式;
(3)掌握指针与数组、函数、字符串等的联系;
(4)掌握动态空间操作;
(5)掌握引用参数的使用。
5、自定义数据类型
考试内容
(1)结构的定义;
(2)结构变量的定义与初始化;
(3)结构成员的访问操作;
(4)结构体与数组;
(5)结构与函数;
(6)结构与链表的基本操作;
(7)共用体;
(8)枚举类型;
(9)用typedef声明类型。
考试要求
(1)掌握结构的概念和结构类型的定义;
(2)掌握结构变量的定义和初始化;
(3)掌握结构成员的访问、结构赋值的含义以及结构与指针、函数的关系;
(4)掌握共用体变量的访问方式;
(5)掌握枚举类型;
(6)掌握用typedef声明类型。
(三)面向对象的程序设计
1、类与对象
考试内容
(1)类的声明和对象的定义;
(2)类的成员函数;
(3)对象成员的引用;
(4)类的封装性和信息隐蔽;
(5)构造函数与析构函数;
(6)对象数组;
(7)对象指针;
(8)共用数据的保护;
(9)对象的动态建立和释放、对象的赋值和复制;
(10)静态成员;
(11)友元;
(12)类模板。
考试要求
(1)掌握类的定义、类的成员变量和成员函数的定义和使用,以及对象的定义;
(2)掌握静态类成员变量和成员函数的定义和使用方法;
(3)掌握构造函数和析构函数;
(4)理解类的封装性和信息隐蔽;
(5)掌握对象的动态建立和释放、对象的赋值和复制;
(6)掌握对象数组的建立、对象指针的使用;
(7)了解友元函数和友元类;
(8)理解类模板的概念,掌握类模板的定义、实例化过程,掌握类模板运用。
2、运算符重载
考试内容
(1)运算符重载的概念;
(2)运算符重载的方法;
(3)重载运算符的规则;
(4)运算符重载函数作为类成员函数和友元函数;
(5)重载双目运算符;
(6)重载单目运算符;
(7)重载流插入运算符和流提取运算符;
(8)不同类型数据间的转换。
考试要求
(1)理解运算符重载的定义,掌握运算符重载的方法、规则;(2)掌握运算符重载函数作为类成员函数和友元函数;
(3)掌握重载双目运算符和重载单目运算符;
(4)了解重载流插入运算符和流提取运算符;
(5)掌握不同类型数据间的转换。
3、继承与派生
考试内容
(1)继承与派生的概念;
(2)派生类的声明方式与构成;
(3)派生类成员的访问属性;
(4)派生类的构造函数和析构函数;
(5)多重继承;
(6)基类与派生类的转换;
(7)继承与组合;
(8)继承在软件开发中的重要意义。
考试要求
(1)掌握继承与派生的概念与使用方法;
(2)掌握继承中的构造函数与析构函数的调用顺序,为派生类设计合适的构造函数初始化派生类;
(3)理解多继承的概念和编程;
(4)掌握基类与派生类的转换;
(5)理解继承与组合的区别;
(6)了解继承在软件开发中的重要意义。
4、多态性与虚函数
考试内容
(1)多态性的概念;
(2)虚函数的概念;
(3)纯虚函数与抽象类。
考试要求
(1)理解多态性的概念;
(2)掌握如何用虚函数实现动态联编,掌握如何利用虚函数;
(3)理解纯虚函数和抽象类的概念,掌握纯虚函数和抽象类的定义方法;(4)理解虚析构函数的概念和作用,掌握其声明和使用方法。
5、I/O流
考试内容
(1)C++的输入和输出;
(2)标准输入流与标准输出流;
(3)文件操作与文件流;
(4)字符串流;
(5)异常处理;
(6)命名空间。
考试要求
(1)了解C++的流,了解一般I/O流和文件流的关系;
(2)掌握格式化I/O的定义格式和定义方法;
(3)了解文件与文件流的关系,了解文件系统的概念,掌握文件类的定义和相关操作的定义、使用方法,掌握利用常用函数进行文件的打开、关闭、读写、定位等操作;
(4)掌握字符串流对象的建立和使用;
(5)掌握异常处理机制和方法;
(6)理解命名空间的作用。
三、参考书目
《C++程序设计》,谭浩强编,清华大学出版社。