最新c语言答案_第1页
最新c语言答案_第2页
最新c语言答案_第3页
最新c语言答案_第4页
最新c语言答案_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精品文档第二部分 习题篇 第一章 C 语言概述 一单项选择题二1. A )9. D ) 10. .填空题1.高级语言2.C)A)112. m3. A )4. B) 5. C) 6. D)7. C )15. A ).分号8. A ). C )in( )12. D )3. main( )13. B )4. 14. D)56.换行7.*/8.函数9.编译10.exe三.判断题1.(对) 2.(对)3.(错) 4.(对)5.(对)6.错)7.(对)8.(错)9.(对)10.对)第二章 数据类型与表达式一.单项选择题1. A )2.C 3. D )4. A )5.C)6. D )7. C)8. C)9.

2、A)10.A ) 11.B)12. C )13. C )14. D)15. B) 16 . B)17. C )二.填空题1. Double2.不同3.274. 355.5 6.double7 . 438. 539.12,10,1810. 12.2011.1,3,3,112.4,8三.判断题1.(对 ) 2.(对 ) 3 .(错)4.(对)5.(对 )6.(错 )7.(对 )8.(错 )9.(对) 10 .(对)第三章 顺序结构程序设计 一单项选择题1.D) 15.0,25.0, 35.02. C )x=1.23,y=1.263.B) seanf(“%d%d%d”,&a,&b,&

3、amp;e);4.A ) seanf("%f",&a);5.D)程序输出小写字母 d6.B) 3填空题15.52c+2531,2,A,a42D三判断题1顺序结构、选择结构和循环结构可以组成所有的各种复杂程序。(对)2复合语句就是多条语句,不必须用花括号括起来。(错)3在变量说明中,允许连续给多个变量赋初值。(错)4. seanf函数和printf函数的原型在头文件“stdio.h中。(对)5printf 函数格式字符串中 %4d 表示输出一定是四位十进制整数。(错)6. putehar 函数的功能是在显示器上输出一个字符。(对)7在 scanf 函数的格式串中,如果

4、是 “ %d%d%”d, 在输入三个十进制整数时要用一个以上 的空格键、回车键和 Tab 键作为每两个输入数之间的间隔。 (对 ) 8在 scanf 函数的格式串中,如果是 “%c%c%c ”, 在输入三个字符时要用一个以上的空格 键、回车键、 Tab 键和逗号作为每两个输入字符之间的间隔。(错 )9scanf("%5.2f",&a); 是合法的 ,目的是输入小数为 2 位的实数。 (错) 10 getchar 函数的功能是从终端输入一个字符。(对 )第四章 选择结构程序设计 一单项选择题1.C)算术运算、关系运算、逻辑运算2.A)%3. B)x= =04.B)!

5、、&& 、|5.D)(x<=y)&&(y<=z)6.D)(x<=-10)|(x>=7)7.A)6<x<108.D)(x>='A')&&(x<='Z')9.A)0, 010 . C)1, 011 . C )212. B)1,0,0,113 . C )114. A)0,015 B)232316B)10,20,#17B)x=3,y=5 二填空题1 x=-x273$4 default52,3,3 三判断题1关系运算符的优先级低于算术运算符,高于赋值运算符。(对 )2关系表达式

6、的值是真”和 假”,用T”和F”表示。(错)3关系表达式 3>2>1 的值为真。(错 )4 逻辑非运算符!为单目运算符,具有右结合性。(对)5 逻辑运算符和其它运算符优先级的关系从高到低为:!(非)t算术运算符t关系运算符t &&和赋值运算符(对)6. if(表达式)语句1;else 语句 2;其语义是:如果表达式的值为真,则执行语句 1,否则执行语句 2。(对 )7. 在if关键字之后均为表达式。该表达式可以是任意表达式,但不能是变量。(错)&当程序中有多对if和else时,它们是按照顺序配对的。如第一个if与第一个else配对,第二个 if 与第二个 e

7、lse 配对,以此类推。 (错 ) 9条件运算符的结合方向是自左至右。(错)10在 switch 多分支语句中, break 语句用于跳出 switch 语句。 (对 ) 四改错题1、下面程序的功能是判断输入的一个整数是否能被5和 7同时整除,若能整除,输出“YES ”,否则,输出“ NO”。错误语句:if(x%5=0|x%7=0)正确语句: if(x%5=0&&x%7=0)2下面程序的功能是输出一个 4 位整数的后两位数值,例如输入5678,输出 78。错误语句: scanf("%d",x);正确语句: scanf("%d",&

8、x); 3下面程序的功能是从键盘输入三个整数,输出其中最小的数。错误语句:min=(temp>c)?temp:c ;正确语句: min=(temp<c)?temp:c ;4下面程序的功能是判断某一年是否为闰年。错误语句: if (year%400!=0)正确语句: if (year%400=0)第五章 循环结构程序设计 一单项选择题1C)212D)for( 表达式 1;1;表达式 3)3D )在 do-while 循环中,当 while 后的表达式为 0 时结束循环4 C) do-while 的循环体至少无条件执行一次5A )606C)17B)18A)-19C)5050二填空题1i

9、+2031.0/i4num+5|6e7A8.239month10 sum=0三判断题1、“当型”循环是先判断表达式后执行循环体,“直到型”循环是先执行循环体后判断表达式。 (对 )2、如果循环体内包含一个以上的语句,应该用花括弧括起来,组成复合语句。(对 )3、 do-while 语句和 while 语句可以互相转换,运行结果相同。 (错 )4、for( 循环变量赋初值;循环条件;循环变量增值)中的循环条件不允许省略。 (错 )5、 for (f=1 , i=1;i<=10; f=f*i ,i+) ; 是非法语句。 (错 ) 6、三种循环 while 循环、 do while 循环和 f

10、or 循环可以互相嵌套。 (对 ) 7、在循环结构中, break 语句可以使流程跳出循环体,即提前结束循环。 (对)8、在循环结构中, continue 语句是结束本次循环,即跳过循环体中下面未执行的语句,接 着进行循环条件的判定。 (对)9、 continue语句和break语句的区别是 break语句只结束本次循环,继续进行下一次循环, 而 continue 语句则是结束整个循环,不再判断循环条件是否成立。(错 )10、goto 语句能构成循环,可以随意使用。(错 )四改错题1下面程序的功能是求10!。错误语句: for (i=10; i>=0; i+)正确语句: for (i=1

11、0; i>0; i-)2下面程序的功能是输出1100 之间所有能被 3整除的数。错误语句: if(i%3)beeak;正确语句: if(i%3)continue;3 .下面程序的功能是求1!+2!+!。错误语句: while(i>=n);正确语句: while(i<=n);4.下面程序的功能是利用公式n /4 1-1/3+1/5-1/7+求n的近似值,直到某一项的绝对值小于 10-7 为止。错误语句: while(fabs(temp)>10-7)正确语句: while(fabs(temp)>1e-7)第六章 数 组一. 单项选择题1 . D )数组的首地址2. D

12、)在程序运行时,如果数组元素的下标超出了所定义的下标范围时,系统将给出“下 标越界”的出错信息3. C) x214. B) scanf("%d%s",&x,y);5. D) #define N 50;6. A) int a2 =1,2,3,4;7. A) a00=0 , a01=1 , a10=2 , a11=38. D) char a =1,2,3,4,5,6;9. C)数组a的长度大于数组b的长度10. D)把字符串str2复制到字符串str1中再把字符串str3连接到字符串str1之后11. D)对于字符型数组,可以在赋值语句中通过运算符“=”进行整体赋值二.

13、 填空题1. 同一个2方括号3连续40 195行6一708. 字符数组名9 10, 610211 fibonaccii-1+fibonaccii-2;12yji=xij13 9814-2115i<j16i17 stri=stri+118 string2i=string1i;19. j+;三判断题1在C语言中,数组属于构造类型的数据。(对)2一个数组的各个元素的数据类型可以不完全相同。(错)3数组在内存中占有连续的存储单元,数组名表示数组在内存中的首地址。(对)4. 使用语句int a5;定义了一个一维数组 a,其中有 5个元素,为 a1,a2,a3,a4,a5。 (错)5. 数组名后是用

14、方括号或圆括号括起来的常量表达式。(错 )6. C 语言编译程序不对数组作边界检查,如果程序中出现了下标越界,可能会造成程序运行结果的错误。因此要注意下标不能过界。(对 )7. C 语言允许对数组的长度作动态定义,即数组长度可以是变量。(错 ) &在C语言中,使用数值型数组时,只能逐个引用数组元素而不能一次引用整个数组。(对)9. 为数组元素赋值时,若所有元素值全部相同,则可以给数组整体赋初值。(错 )10. 对数组的全部元素赋初值时,也可以不指定数组长度。(对 )11. C 语言中二维数组的元素在内存中排列的顺序是按行存放。(对 )12. 如果对二维数组中全部元素赋初值,则数组的第一

15、维和第二维长度均可以省略。(错 )13. 在 C 语言中,字符串是借助于字符数组来存放的。(对 )14. 在字符串常量的末尾,系统会自动加一个0'作为结束符。(对 )15. 用字符串常量对字符数组初始化时,数组的长度至要与字符串长度相同。(错)16. 在printf函数中用“ s”格式符输入字符串时,空格和回车可以被读入。(错)17. 在printf函数中使用格式说明“ %s”可以实现字符串的整体输出。(对)18. gets函数的功能是从终端读入字符串到字符数组,直到遇到一个空格符。(错)19. 使用 strcat 函数时,字符数组 1的长度要足够大, 以保证全部装入被连接的字符。 (

16、对 )20. strcpy 函数中的“字符数组 1”和“字符串 2”,可以是字符串常量也可以是已赋值的字错)符数组名。四改错题1下面程序的功能是为数组输入数据并输出结果。错误语句:scanf("%d",&a);正确语句:scanf("%d",&ai);2下面程序的功能是求矩阵 a 的主对角线元素之和。错误语句:if(i<=j) sum=sum+aij;正确语句:if(i=j) sum=sum+aij;3下面程序的功能是输出字符串StringStringStringStringStringString 。错误语句:printf(&qu

17、ot;%c",ci);正确语句:printf("%s",c);4下面程序的功能是输入 3个字符串 ,然后找出其中最小者。 错误语句: if (str2<string)正确语句:if (strcmp(str2,string)<0)第七章 函 数 一单项选择题1. C)函数2. D)文件3. B) int4. D)实参和形参分别占用一个独立的存储单元5. C)单向值传递6. D)数组的首地址7. A )定义该函数时所指定的函数类型决定&D)函数调用可以作为一个函数的形参9. B) 210. C)函数不可以嵌套定义,但可以嵌套调用11. C)称为函数

18、的间接递归调用12. A)允许直接递归调用,允许间接递归调用13. D)在一个函数内的复合语句中定义的变量只在本函数范围内有效14. A)从定义该变量的位置开始至本文件结束15. D) auto 和 register16. D) extern17. D)函数的类型可以是整型、实型、字符型,但不可以是指针型18. C) 1619. A) 520. B) 321 .D)1022.D)15.000000二填空题1用户自定义函数2嵌套3类型4嵌套调用5递归调用6局部变量7源程序文件8 static9 extern10 max(a,b)11 int min(int x, int y)12 93三判断题1

19、 C 语言中,函数既可以嵌套定义,也可以嵌套调用。( 错 )2如果在定义函数时不指定函数类型,系统会隐含指定函数类型为int 型。 ( 对 )3简单变量做实参时,实参对形参的数据传送是单向的“值传递”。 (对 )4实参和形参不能同名,以免相互影响。(错 )5当一个函数中有多个 return 语句时, 第一个 return 语句起作用。 (错 ) 6。 如果函数值的类型和 return 语句中表达式的值不一致,则以函数类型为准。 (对 ) 7只要被调用函数的定义出现在主调函数之后,就必须声明。(错 )&C语言允许函数嵌套调用,也允许函数递归调用。(对)9数组元素作函数实参时,其用法与普通

20、变量完全相同,实现单向“值传送”。 (对 )10数组名作函数实参时,其用法与普通变量完全相同,实现单向“值传送”。 (错 )11用数组名作函数实参时,从本质上说是把实参数组的地址传递给形参数组。(对 )12在一个函数内部定义的变量是内部变量,它只在该函数范围内有效。(对)13形参变量是内部变量,实参变量则是外部变量。(错)14在主函数中的复合语句中定义的变量,其作用域在主函数范围内。(错)15C 语言中,主函数比其它函数级别高,可以使用其它函数中定义的局部变量。(错)16全局变量的作用域是从定义位置开始,到本文件结束为止。(对)17当全局变量和局部变量同名时,全局变量起作用,局部变量不起作用。

21、(错)18静态存储方式是指在程序运行期间分配固定的存储空间的方式。而动态存储方式则是在程序运行期间根据需要进行动态的分配存储空间的方式。(对 )19在程序执行期间,静态局部变量始终存在,其它函数也可以引用它们。(错 )20静态局部变量是在编译时赋初值的,即只赋初值一次, 以后每次调用它们所在的函数时,不再重新赋初值,只是保留上次调用结束时的值。(对 )四改错题1下面程序的功能是用递归法计算n!。错误语句: else f=n*f(n-1);正确语句: else f=n*fac(n-1);2下面程序的功能是输出 1 到 5 的阶乘。错误语句: int f=1;正确语句: static int f=

22、1;第八章 指针 一单项选择题1. B)变量的地址2D)int *pointer=&x ;3.B ) pointer=&x ;4. B )相加5.A )能直接访问,能间接访问6.C)指向包含5个整型兀素的一维数组的指针7.A)指针数组名字,包含 5个指向整型数据的指针8.C)最多允许2个9.A)指向函数的指针,函数返回值为一个整数10A)返回值为指针的函数名字11A)-112D)a=3,b=213C)12,1114A)16,48,80,15. C) 6,2,416C) yyzzqq 17 D ) IHGFEDCBA 二填空题1基类型2地址3 scanf ("%d&qu

23、ot;,p);4入口5指针数组 6指向函数的指针变量77, a108 a,apple9 apple pple ple le e10 2,a211 &sub_result , &add_result12 len+13. *p2+14. *p15. (*p)(a,b,c)16. english_namen三.判断题1 指针就是地址,指针变量就是存放变量地址的变量。(对)2. 对变量的访问可以用直接访问方式和间接访问方式。(对)3. 可以给指针变量赋一个整数。(错)4.指针变量能指向任意类型的变量。(错)5多个指针变量不能指向同一个变量。(错)6. *运算符和取地址运算符&互

24、逆。(对)7. 使用指针类型变量做函数的参数,实际向函数传递的是变量的地址。(对)&当指针变量p指向一个整型数组时,p+1是指p的地址加1字节。(错)9. C 语言中,数组名和指针变量均可分别做实参和形参。(对)10. int *pa10 ;这个语句是定义一个指针,该指针可以指向有 10个元素的数组。 (错 ) 四改错题1 某一个班级有n个学生,开设 m门课程。使用指针的方法编写程序,查找有课程不 及格的学生,并且打印他们的成绩。错误语句: if (j<N)正确语句: if (j<M)2 使用指针编写程序,从键盘输入的n个整数中找出其中最大值和最小值。调用一个函数只能得到一

25、个返回值,要得到多个返回值则用全局变量在函数之间“传递”数据。 错误语句: int *p,array_end;正确语句: int *p, *array_end;3使用指针编写程序,从键盘输入一个字符串,然后统计字符串中字符的个数。错误语句: scanf ("%s", &string);正确语句: scanf ("%s",string);4使用指针编写程序,在输入的字符串中查找是否存在字符'错误语句: if (pi!='0') 正确语句: if (pi='0')5使用指针数组编写程序,从键盘输入一个星期几(例

26、如7),则程序输出对应星期几的英文名字( Sunday)。错误语句: if (n<1&&n>7) 正确语句: if (n<1|n>7)第九章 结构体与共用体一单项选择题1 D) student1 是结构体类型名2. C)共用体类型_z .t、 1t 1*tr . ,. r > . 、“ t r t、,.3.4.A )各成员所需内存字节数的总和D)三种形式均可表示5.D)成员中占内存字节数最大的6.B)167.B)808.C) student1.birthday.month=6;student1.birthday.day=10;student1.bi

27、rthday.year=2003;9.B ) printf("%c", 0);10.B)scanf("%s",&);11.A) 1001,65012.C)zzxxyy13.B)1102,550,"Li"14.D)Tao15.D)使用typedef可以增加新类型16.D) typedef char * STR;填空题1指向结构体成员,结构体成员2 duoble *3地址42565A61002,1003,1004;7 p->age8 p=head三判断题 1“结构体”是一种构

28、造类型,它是由若干相互关联的“成员”组成的。每一个成员可以是 一个基本数据类型,也可以是数组、指针,或者又是一个构造类型。 (对) 2结构体变量的总长度为各个成员长度的总和。(对)3在定义结构体变量时成员名不可以与程序中其它变量同名。(错)4结构体变量名是结构体变量的首地址。(错)5 C 语言中不允许用结构体变量作函数参数进行整体传送。(错)对)错)6malloc 函数的功能是在内存的动态存储区中分配一块长度为"size" 字节的连续区域。7链表中的每个结点都分为两个域,一个是数据域,存放各种实际的数据;另一个域为指 针域,存放下一结点的首地址。 (对 ) 8“共用体”类型

29、变量只能存储相同类型数据的变量,不能存储不同类型数据的变量。(错 )9共用体的长度是成员列表中最大长度的成员长度。(对10共用体类型的多个成员在内存中是首地址相同的,因此可以同时访问共用体成员。四改错题1下面程序的功能是求学生成绩的总和。错误语句:struct stu p=student;正确语句:struct stu *p=student;2下面程序的功能是输出链表中所有结点的数据。错误语句:p=head->next;正确语句:p= p->next第十章 文 件 一单项选择题I. D)可以顺序存取,也可以随机存取2 D )文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件3. B )文本文件4. B )对文件操作时需要先打开文件5. D ) fopen("wr.dat","wb");6. B ) fopen("D:programmy.txt",&q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论