C重要资料学习知识重点情况总结及其习题集(new).doc
《C重要资料学习知识重点情况总结及其习题集(new).doc》由会员分享,可在线阅读,更多相关《C重要资料学习知识重点情况总结及其习题集(new).doc(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.第2章 基本数据类型、运算符与表达式【习题】一、 选择题1. 下列数据类型不是C+语言基本数据类型的是( )。(a)字符型 (b)整型 (c)浮点型 (d)数组一、 下列字符列中,可作为C+语言程序自定义标识符是( )。选择题2.(a)x (b)-var (c)new (d)3i3. 下列数中哪一个是8进制数( )。(a)0x1g (b)010 (c)080 (d)01b4. 已知a=1,b=2,c=3,则表达是+a|-b&+c的值为( )。(a)0 (b)1 (c)2 (d)35. 下列表达式选项中,( )是正确的。(a)+(a+) (b)a+b (c)a+b (d)a+b6. 已知枚举类
2、型定义语句为:( )。enum colorRED,BLUE,PINK=6,YELLOW,GREEN,PURPLE=15;则下列叙述中错误的是( )。(a)枚举常量RED的值为1 (b)枚举常量BLUE的值为1(c)枚举常量YELLOW的值为7 (d)枚举常量PURPLE的值为15二、 填空题1. c+语言标示符是以字母或_下划线_开头的,由字母、数字、下划线组成。2. 在C+语言中,char型数据在内存中的存储形式是_ ASCII_。3. 在内存中,存储字符x占用1个字节,存储字符串“x”要占用_2_个字节。4. 符号常量可以用宏定义define和_ const_表示。5. 转义字符序列中的首
3、字符是_。6. 空字符串的长度是_0_。7. 表达式coutn;还可以表示为coutendl。三、 编程题1. 编写一个程序,输入一个三位数,分别输出该数的百位、十位和个位。【参考答案】一、 选择题1 d2 a3 b4 b5 c6 a7 c二、 填空题1 下划线2 ASCII3 24 const5 6 07 coutendl;8 a+b a-b a-b9 iomanip.h iostream.h三、 编程题1#includevoid main()int num,var1,var2,var3;cout请输入一个三位数:num;if(num999|num100) /用于检查输入数据的合法性cout
4、您的输入有误!endl;elsevar1=num/100;var2=(num-var1*100)/10;var3=num%10;cout百位数为:var1endl十位数为:var2endl个位数为:var3endl;第3章 C+程序的流程控制【习题】一、 选择题1 在循环语句中使用break语句的作用是( )。(a)结束本次循环 (b)结束该层循环 (c)结束所有循环 (d)结束程序执行2 对if后的括号中的表达式,要求i不为0的时候表达式为真,该表达式表示正确的为( )。(a)i (b)!i (c)i0 (d)i=03 下列循环语句的执行次数是( )。while(!1) cout”ok!”;
5、(a)0次 (b)1次 (c)2次 (d) 无数次4 运行下列程序结果为( )。#includevoid main() int i; for (i=0;i=10;i+) if (i%2) couti; else continue; (a)246810 (b)12345 (c)678910 (d)13579二、 填空题1 结构化程序设计的三种基本结构是顺序结构、选择结构(分支结构)、循环结构。2 continue语句实现的作用是_跳出本次循环。_。3若输入”china 2008!”,运行下列程序的输出结果为_。#include #include void main( ) char c; int
6、letters=0,digits=0,others=0; coutPlease input a line charaters=a & c=A & c=0 & c=9) digits+; else others+; coutletters:lettersendl digitsdigitsendl othersothersendl;please input a line charatersletters:5digits:4others:24本程序完成1!+2!+18!的计算,请将程序补充完整。#include#includevoid main() double sum=0,fac=1; for(i
7、nt i=1;i=18;i+) _ fac*=i _ _ sum+=fac _ cout1!+2!+18!= setiosflags(ios:fixed)setprecision(0) sumsetprecision(6)endl;三、 编程题1. 输入某学生成绩,若成绩在90-100输出优秀,若成绩在80-89输出良好,若成绩在70-79输出中,若成绩在60-69输出”及格”,若成绩在0-59输出”不及格”。2. 输入三人数,按从小到大的大顺序输出。3. 在100200中找出同时满足用3除余2,用5除余3和用7除余2的所有整数。【参考答案】一、选择题1. b 2. a3. a4. d二、填空
8、题1顺序结构、选择结构(分支结构)、循环结构2跳出本次循环。3please input a line charatersletters:5digits:4others:24fac*=i; sum+=fac;三、编程题1#includevoid main() double grade; char* degree; coutgrade; if(grade100|grade0) cout您的输入有误!=70) if(grade80) degree=中; else if(grade=60) degree=及格; else degree=不及格; cout分数:gradeendl degreeendl;
9、2#includevoid main() int num1,num2,num3,num; coutnum1num2num3; if(num1num2) num=num1; num1=num2; num2=num; if(num1num3) num=num1; num1=num3; num3=num; if(num2num3) num=num2; num2=num3; num3=num; cout三个数按从小到大输出为:endl num1endl num2endl num3endl;3#includevoid main() cout在100200中同时满足用3除余2,用5除余3和用7除余2的整数
10、为:endl; for(int i=100;i=200;i+) if(i%3=2&i%5=3&i%7=2) coutiendl; 第4章 数组【习题】一、 选择题1.在C+中对数组下标说法正确的是( )。(a)初始化数组的值的个数可以多于定义的数组元素的个数,多出部分将被忽略。(b)初始化数组的值的个数可以少于定义的数组元素的个数。(c)初始化数组的值的个数必须等于定义的数组元素的个数。(d)初始化数组的值可以通过跳过逗号的方式来省略。如int a3=1,2;2.数组定义为:int a22=1,2,3,4;则a10%3为( )。(a)0 (b)1 (c)2 (d)44.运行下列程序结果为( )
11、。#includevoid main()int a4=1,2,3,4;for(int i=3;i=0;i-)coutai;(a)1234 (b)1324 (c)4231 (d)43215.运行下列程序结果为( )。#includevoid main()int i,j,t,a22=8,7,6,5;for(i=0;i1;i+)for(j=i+1;j2;j+)t=aij;aij=aji;aji=t;for(i=0;i2;i+)for(j=0;j2;j+)coutaij;coutendl;(a)87 (b)78 (c)86 (d)6865 65 75 57二、 填空题1 数组包含_M_行、_N_列和_
12、M*N_个元素。2 定义数组int a10;,若要给该数组的第三个元素赋值100,其语句为_ a2=100_。3 已知数组a中的元素个数为4,下列语句的作用是将下标为i的元素移动到下标为i1的单元,其中1i4。a中原有数据为1,2,3,4,移动后a中元素结果为2,3,4,4。请将下列程序补充完整。#includevoid main()int a4=1,2,3,4;for(int i=0;_i3_;i+) ai=_ ai+1_;4 程序填空运行下列程序后当str是对称的时,输出“是回文”,否则输出“不是回文”,请将程序补充完整。#includevoid main() char str20; ci
13、n.get(str,20);/输入字符串 int i=0, j=0; while (strj)_ j+_; for(j-; ij & stri=strj; i+,j-); if(_i=j _)cout是回文; else cout不是回文;5 运行下列程序的结果为_。#include#includevoid main()int array133=1,2,3,4,5,6,7,8,9,array233,i,j;for(i=0;i3;i+)for(j=0;j3;j+)array2ji=array1ij;for(i=0;i3;i+)for(j=0;j3;j+)coutsetw(3)array2ij;co
14、utendl;1 4 7 2 5 8 3 6 96 运行下列程序的结果为_。#includevoid main()int num6,i,j;cout请输入1到50的六个正整数:;for(i=0;inumi;for(i=0;i6;i+)for(j=1;j=numi;j+)cout*;coutendl;输入为:2 4 1 6 3 1 *三、 编程题1设学生人数N=8,提示用户输入N个人的考试成绩,然后计算出平均成绩,显示出来。2. 将一个二维数组行和列互换,然后存放到另一个二维数组中;【参考答案】一、 选择题1.b2.a4.d5.c6.二、 填空题1mnmn2.a2=100;3i3ai+14j+
15、i=j51 4 7 2 5 8 3 6 96 *三、 编程题解:源程序:#include #include #define N 8float gradesN; /存放成绩的数组void main()int i;float total,average;/提示输入成绩for(i = 0; i N; i+ )cout Enter grade # (i +1) gradesi;total = 0;for (i = 0; i N; i+)total += gradesi;average = total / N;cout nAverage grade: average endl;#include usin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 重要 首要 资料 学习 知识 重点 情况 总结 及其 习题集 new
限制150内