技能竞赛C试题

Size: px
Start display at page:

Download "技能竞赛C试题"

Transcription

1 C 语言程序设计试题 第 章概述 类型 表达式 一 选择题 1 一个 C 程序由若干个 C 函数组成, 各个函数在文件中的位置顺序为 :( ) A 任意 B 第一个函数必须是主函数, 其他函数任意 C 必须完全按照执行的顺序排列 D 其他函数可以任意, 主函数必须在最后 2 下列四个叙述中, 正确的是 :( ) A C 程序中的所有字母都必须小写 B C 程序中的关键字必须小写, 其他标示符不区分大小写 C C 程序中的所有字母都不区分大小写 D C 语言中的所有关键字必须小写 3 下列四个叙述中, 错误的是 :( ) A 一个 C 源程序必须有且只能有一个主函数 B 一个 C 源程序可以有多个函数 C 在 C 源程序中注释说明必须位于语句之后 D C 源程序的基本结构是函数 4 下面不是 C 语言合法标识符的是 :( ) A abc B 5n C _4m D x3 5 以下叙述不正确的是 :( ) A. 分号是 C 语句的必要组成部分 B. C 程序的注释可以写在语句的后面 C. 函数是 C 程序的基本单位 D. 主函数的名字不一定非用 main 来表示 6 C 语言中允许的基本数据类型包括 :( ) A. 整型 实型 逻辑型 B. 整型 实型 字符型 C. 整型 字符型 逻辑型 D. 整型 实型 逻辑型 字符型 7 C 语言中能用八进制表示的数据类型为 :( ) A 字符型 整型 C 字符型 实型 双精度型 8 下列属于 C 语言合法的字符常数是 :( ) B 整形 实型 D 字符型 整型 实型 双精度型 A \97 B A C \t D \0 9 在 C 语言 (VC 环境 ) 中,5 种基本数据类型的存储空间长度的排列顺序为 :( ) A char<int<=long int <=float<double B char=int<long int <=float<double C char<int<long int=float=double

2 D char=int=<long int <=float<double 10 在 C 语言中 (VC 环境 ), 一定是长整型常数的是 :( ) A 0L B C D 0xa34b7fe 11 若有以下定义语句 char c1= b, c2= e ; printf( %d,%c\n,c2-c1,c2- a + A ); 则输出 结果是 :( ) A 2,M B 3,E C 2,E D 输出项与相应的格式控制不一致, 输出结果不确定 12 以下合法的赋值语句是 :( ) A x=y=100 B d--; C x + y D c = int(a+b); 13 设变量 t 为 int 型, 下列选项中不正确的赋值语句是 :( ) A ++t; B n1=(n2=(n3=0)); C k=i==m; D a=b+c=1; 14 在以下一组运算符中, 优先级最高的是 :( ) A <= B == C % D && 15 下列能正确表示 a 10 或 a 0 的关系表达式是 :( ) A a>=10 or a<=0 B a<=10 a>=0 C a>=10 a<=0 D a>=10 && a<=0 16 下列只有当整数 x 为奇数时, 其值为 真 的表达式是 :( ) A x%2==0 B!(x%2==0) C (x-x/2*2)==0 D!(x%2) 17 设 a 为整型变量, 不能正确表达数学关系 10<a<15 的 C 语言表达式是 :( ) A 1 0< a < 15 B!(a<=10 a>=15) C a>10 && a<15 D!(a<=10) &&!(a>=15) 18 已知 x=43, ch= A,y=0; 则表达式 (x>=y&&ch< B &&!y) 的值是 :( ) A 0 B 语法错 C 1 D 假 19 表达式 17%4 /8 的值为 :( ) A 0 B 1 C 2 D 3 20 语句 printf( %d,(a=2)&&(b= -2)); 的输出结果是 :( ) A 无输出 B 结果不确定 C -1 D 1 21 一个可执行的 C 程序的开始执行点是 :( ) A. 程序中的第一个语句 B. 包含文件中的第一个函数 C. 名为 main 的函数 D. 程序中的第一个函数 22 组成 C 语句的一个必不可少的符号是 :( ) A. 逗号 B. 引号 C. 冒号 D. 分号

3 23 若将 int long float 等类型的数据进行混合运算, 其结果的数据类型是 :( ) A. int B. long C. float D. double 24 下述是 C 语言中有关变量定义的几个说法, 正确的是 :( ) A. 变量可以不定义直接使用 B. 一个说明语句只能定义一个变量 C. 几个不同类型的变量可在同一语句中定义 D. 变量可以在定义时进行初绐化 25 与 x * = y + z 等价的赋值表达式是 :( ) A. x = y + z B. x = x * y + z C. x = x * (y + z) D. x = x + y * z 26 当代电子计算机能够自动地处理指定的问题是因为 :( ) A. 计算机是电动的 B. 有解决该问题的计算机程序 C. 事先存储了解决该问题的程序 D. 以上都不是 ( 知识点 : 程序的基本概念 ; 难度系数 :2; ) 27 以下叙述中最准确的是 :( ) A. 计算机程序是处理某一问题所有指令的集合 B. 计算机程序是处理某一问题所用到的所有数据的集合 C. 计算机程序是处理某一问题的所有指令及其数据的集合 D. 计算机程序是处理某一问题的所有指令及其数据的有序集合 ( 知识点 : 程序的基本概念 ; 难度系数 :2; ) 28 关于计算机程序设计, 以下描述最准确的是 :( ) A. 程序设计就是用语言来编写程序 B. 程序设计就是用计算机语言来编写程序 C. 程序设计就是用计算机程序设计语言来编写程序 D. 程序设计就是用计算机能识别的语言来编写程序 ( 知识点 : 程序设计的基本概念 ; 难度系数 :1; ) 29 目前编写计算机程序一般采用的是 :( ) A. 机器语言 B. 汇编语言 C. 高级语言 D. 英语 ( 知识点 : 程序设计的基本概念 ; 难度系数 :1; ) 30 设计一个计算机程序最基本的工作是 :( ) A. 制定正确的算法 B. 选择合理的数据结构 C. 制定正确的算法和选择合理的数据结构 D. 以上都不是 ( 知识点 : 算法的基本概念 ; 难度系数 :1; ) 31 算法具有五个特性, 以下选项中不属于算法特性的是 :( ) A. 有穷性 B. 简洁性 C. 可行性 D. 确定性 ( 知识点 : 算法的基本概念 ; 难度系数 :3; ) 32 下述哪一个不是结构化程序基本结构 :( ) A. 顺序 B. 选择 C. 循环 D. 嵌套 ( 知识点 : 结构化程序设计的概念 ; 难度系数 :2; ) 33 C 语言是一种 :( ) A. 机器语言 B. 汇编语言 C. 高级语言 D. 以上都不是 ( 知识点 :C 语言的特点 ; 难度系数 :1; )

4 34 C 语言源程序的扩展名为 :( ) A..exe B..c C..obj D..cpp ( 知识点 :C 语言的特点 ; 难度系数 :1; ) 35 C 程序编译后最终产生 ( 即计算机执行 ) 的文件的扩展名为 ( ) A..exe B..c C..obj D..cpp ( 知识点 :C 语言的特点 ; 难度系数 :1; ) 36 下列各项中, 不是 C 语言的特点是 :( ) A. 语言简洁 紧凑, 使用方便 B. 程序执行效率高, 可移植性好 C. 能实现汇编语言的大多数功能 D. 有较强的网络操作功能 ( 知识点 :C 语言的特点 ; 难度系数 :3; ) 37 构成 C 语言源程序的基本单位是 :( ) A. 子程序 B. 过程 C. 文本 D. 函数 ( 知识点 :C 程序的特点 ; 难度系数 :1; ) 38 下列叙述正确的是 :( ) A.C 语言源程序可以直接在 DOS 环境中运行 B. 编译 C 语言源程序得到的目标文件可以直接在 DOS 环境中运行 C.C 语言源程序经过编译 连接得到的可执行程序可以直接在 DOS 环境中运行 D.C 语言源程序可以直接在 VC++ 环境中运行 ( 知识点 :C 程序的特点 ; 难度系数 :2; ) 39 某 C 程序由一个主函数 和一个自定义函数 max() 组成, 则该程序 :( ) A. 写在前面的函数先开始执行 B. 总是从 函数开始执行 C. 总是从 max() 函数开始执行 D. 写在后面的函数先开始执行 ( 知识点 :C 程序的特点 ; 难度系数 :1; ) 40 以下叙述不正确的是 :( ) A. 分号是 C 语句的必要组成部分 B.C 程序的注释可以写在语句的后面 C. 函数是 C 程序的基本单位 D. 主函数的名字不一定用 mian 表示 ( 知识点 :C 程序的特点 ; 难度系数 :1; ) 41 以下为 C 语句的是 :( ) A.a=8 B.a++; C.if(a>8) D. #include <stdio.h> ( 知识点 :C 语句的特点 ; 难度系数 :2; ) 以下不是 C 语句的是 :( ) A.a=8; B.a++; C.if(a>8); D.for(i=1;i<5;i++) ( 知识点 :C 语句的特点 ; 难度系数 :2; ) 42 以下所列语句中, 合法的语句是 :( ) A.a=1,b=2 B.++a; C.a=a+1=5 D.y=int(a); ( 知识点 :C 语句的特点 ; 难度系数 :2; ) 43 C 程序中的复合语句指的是 :( ) A. 并列的多个 C 语句 B. 写在同一行中的多个 C 语句 C. 用一对大括号对括的多个 C 语句 D. 就是函数体中的语句 ( 知识点 :C 语句的特点 ; 难度系数 :2; ) 44 当一个很长的 C 语句 ( 中间无字符串 ) 在一行写不下 ( 超出屏幕的宽度 ) 时, 应该 :( )

5 A. 由系统自动换行 B. 立即按回车键换行 C. 在任意一个空格处按回车键换行 D. 输入一个分号后并按回车键换行换行 ( 知识点 :C 语句的特点 ; 难度系数 :2; ) 45 在 x 值处于 -2~2,4~8 时值为 真, 否则为 假 的表达式是 :( ) A.( 2> x> -2 ) (4 > x > 8) B.!((( x < -2 ) ( x >2 )&&(( x <= 4 ) ( x > 8 )) C.( x < 2 )&&( x >= -2 )&&( x > 4 )&&( x < 8 ) D.( x > -2 )&&( x >4 ) ( x < 8 )&&( x < 2 ) 二 判断题 1. ( T )C 语言是严格区分大写和小写的, 因次主函数不能写成 以外的其他形式 2. ( F )C 语言程序是从源文件的第一条语句开始执行的 3. ( T )C 语言对其数据在内存中所占用的实际字节数是有明确规定的 4. ( F )C 语言中 /*..*/ 之间的注释内容是不能跨行的 5. ( F )C 语言中多个以 ; 结束的语句不能放在同一行 6. ( T ) 以下常数 :'101',e3, \78,(2+3)e(4-2) 都是不合法的 7. ( F ) 变量说明语句 int a=b=c=23; 是正确的 8. ( F ) 字符型数据不可以和整数数据一起进行算术运算 9. ( F )C 语句 :3*x*x+4*x+1+6sin(x)=y. 是可以允许的 10. ( T ) 表达式 m=(a=4,4*5) 和 m=a=4,4*5 的值是相等的 11. ( T )C 语言中强制类型转换不会改变原变量的原有数据类型 12. ( F ) 表达式 j=-i++ 和 j=-(i++) 不相等 13. ( T ) 程序段 :i=8,j=10;printf("%d,%d,%d,%d\n",i,j,++i,j++); 其结果 9,10,9, ( F )C 语言中放在 之间的内容都被视为字符串的一个构成部分, 都可以在屏幕上原样显示 15. ( T ) 计算机程序的基本组成是 : 指示计算机如何去解决某一问题的一组指令 16. ( T ) 计算机程序的执行过程实际上是对程序所表达的数据进行处理的过程 17. ( T ) 目前程序设计的理念已经从 面向过程的程序设计 向 面向对象的程序设计 方面转变 18. ( T ) 任何一个计算机程序都可以用机器语言 汇编语言和高级语言来编写 19. ( T ) 有人曾提出 : 计算机程序 = 算法 + 数据结构 20. ( T ) 在程序设计中提到的算法就是 解决问题的方法和步骤 21. ( T ) 在程序设计中提到的数据结构就是 程序处理的对象的表示方法 22. ( T ) 计算机程序的算法就是解决 做什么 和 怎么做 的问题 23. ( T ) 结构化程序设计的基本理念是 : 将一个较大的问题细分成若干个较小问题的组合 24. ( T )C 程序的编译是从程序的第一行开始, 到程序的最后一行结束 25. ( F )C 程序的编译是从主函数的第一行开始, 到主函数的最后一行结束 26. ( F )C 程序的执行是从程序的第一行开始, 一直到程序的最后一行结束 27. ( T )C 程序的执行是从主函数的第一行开始, 一直到主函数的最后一行结束 28. ( T ) 设 x t 均为 int 型变量, 则执行语句 "x = 10;t = x && x > 10;" 后,t 的值为 ( T ) 若 a 和 b 类型相同, 在计算了赋值表达式 a=b 后 b 中的值将放入 a 中, 而 b 中的值不变 30. ( T ) 在 C 程序中,% 是只能用于整数运算的运算符 31. ( T ) 在 C 语言中, 逻辑 真 等价于不等于 0 的数 32. ( F )C 语言中字符型 整型 实型都能用八进制表示

6 33. (F) 在 VC 语言中,5 种基本数据类型的存储空间长度的排列顺序为 :char<int<long int <float<double 34. ( T ) 变量的三要素是 : 变量名 变量类型 变量的值 三 多选题 1. 目前程序设计采用的基本方法有 : A. 面向过程的程序设计 B. 面向对象的程序设计 C. 面向问题的程序设计 D. 面向机器的程序设计 ( 知识点 : 结构化程序设计的概念 ; 难度系数 :1; B ) 第 4 章顺序结构 一 选择题 1 下面程序的输出是 :( ) int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k); A) k=11,k=12,k=13 B) k=11,k=13,k=13 C) k=11,k=013,k=oxb D) k=11,k=13,k=b 2 以下合法的 C 语言赋值语句是 :( ) A)a=b=58 B)k=int(a+b) ; C)a=58,b=58 D)-- i; 3 以下程序的输出结果是 :( ) int x=10,y=3; printf( %d\n,y=x/y); A)0 B)1 C)3 D) 不确定 4 若变量已正确说明为 int 类型, 要给 a,b,c 输入数据, 以下正确的输入语句是 :( ) A)read (a,b,c); C)scanf( %D%D%D,%a,%b,%c); 5 执行下面程序段后,c3 中的值是 :( ) int c1=1, c2=2, c3; c3=c1/c2; A)0 B)1/2 C)0.5 D)1 6 若执行以下程序段, 其输出结果是 :( ) int a=0, b=0, c=0; c=(a-=a-5), (a=b,b+3) ; printf( %d, %d, %d\n, a,b,c); B)scanf( %d%d%d,a,b,c); D)scanf( %d%d%d,&a,&b,&b); A)0,0,0 B)0,0,5 C)5,0,5 D)-10,0,-10

7 7 以下程序段的输出是:( ) float a=57.666; printf( *%2.2f*\n, a); A)*57* B)*58* C)*57.66* D)*57.67* 8 若有以下定义和语句:( ) int a=5,b b=a++; 此处 b 的值是 :( ) A) 7 B) 6 C) 5 D) 4 9 若有以下定义和语句:( ) char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+'a') 则输出结果是 :( ) A) 2,M B) 3,E C) 2,e D) 输出结果不确定 10 以下程序的输出结果是:( ) int x=10,y=10; printf("%d%d\n",x--,--y); A) B) 9 9 C) 9 10 D) 在 C 语言中, 如果下面的变量都是 int 类型, 则输出结果是 :( ) sum=pad=5; pad=sum++,pad++,++pad; printf("%d\n",pad); A) 7 B) 6 C) 5 D) 4 12 以下程序的输出结果:( ) #include<stdio.h> int i=010,j=10; printf("%d,%d\n",++i,j--); A) 11,10 B) 9,10 C) 010,9 D) 10,9 13 在 C 语言中,short 类型数据的范围是 ~32767, 下面程序段的输出结果是 :( ) short i =65536; printf("%d\n",i); A) B) 0 C) 1 D) 超出取值范围, 无输出结果

8 14 已知字符 A 的 ASCII 码为十进制的 65, 下面程序的输出是 :( ) char ch1,ch2; ch1='a'+'5'-'3'; ch2='a'+'6'-'3'; printf("%d,%c\n",ch1,ch2); A) 67,D B) B,C C) C,D D) 不确定的值 15 若有定义和语句: char s; s="abcd"; printf("%d\n",s); 则结果是 :( ) A) 输出 97 B) 输出 a C) 输出 adcb D) 编译不能通过 16 若有定义:int x,y; char a,b,c; 并有以下输入数据 ( 此处 <CR> 代表换行, 代表空格 ): 1 2 <CR> A B C<CR> 则能给 x 赋整数 1, 给 y 赋数 2, 给 a 赋字符 A, 给 b 赋字符 B, 给 c 赋字符 C 的正确程序段是 :( ) A) scanf("x=%d y=%d",&x,&y); a=getchar(); c=getchar(); B) scanf("%d%d",&x,&y); a=getchar(); b=getchar(); c=getchar(); C) scanf("%d%d%c%c%c",&x,&y,&a,&b,&c); D) scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c); 17 两次运行下面的程序, 如果从键盘上分别输入 6 和 4, 则输出结果是 :( ) int x; scanf("%d",&x); if (x++>5) printf("%d",x) else printf("%d\n",x--); A) 7 和 5 B) 6 和 3 C) 7 和 4 D) 6 和 4 18 若执行下面的程序从键盘输入 3 和 4, 则输出是 :( ) int a,b,s; scanf("%d%d",&a,&b); s=a; if (a<b) s=b; s=s*s; printf("%d\n",s);

9 A) 14 B) 16 C) 18 D) 设 i 是 int 型变量,f 是 float 型变量, 用下面的语句给这两个变量输入值 scanf("i=%d,f=%f",&i,&f); 为了把 100 和 分别赋给 i 和 f, 则正确的输入为 :( ) A) 100< 空格 >765.12< 回车 > B) i=100,f=765.12< 回车 > C) 100< 回车 >765.12< 回车 > D) x=100< 回车 >,y=765.12< 回车 > 20 以下程序的输出结果是 :( ) #include<stdio.h> int n; printf("%d\n",n); A) -1 B) 0 C) 1 D) 不确定 二 判断题 1.( F ) 在 C 语言中, 实型数据在内存都中占 4 个字节 2.( F ) 在 C 语言中, 参加算术 (+,-,*,/,%) 运算的数据可以是任何类型的数据 3.( F ) 若有定义和语句 :int a;char c;scanf("%d,%c",&a,&c); 当通过键盘输入 : 10, A 之后, 则变量 a 中存放的是 10, 变量 c 中存放的是 A 4.( F )C 语言中, 变量名只能是小写字母表示, 符号常量名可用大写表示 5.( F ) 在 C 语言中, 变量可以不要定义, 直接使用 6.( T ) 一个 C 语言程序总是从主函数开始执行的 7.( F ) 注释语句必须用 /* 和 */ 括起来, 且只能位于某一语句的后面 8.( F ) a 和 a 均是占用 1 个字节的内存空间的数据 三 多选题 1. 以下所列语句中, 不合法的语句是 :( ) A a=1,b=2 B ++a; C a=a+1=5; D y= (int) a; E a=b=c=10; CD 2. 下列描述正确的是 :( ) A. putchar 函数的作用是向屏幕输出一个字符 B. putchar 函数能在屏幕上输出控制字符 C. putchar(c) 函数中,c 只能是字符型变量, 不能是整型变量 D. putchar 函数能在屏幕上输出转义字符 E.putchar 函数的使用需要包含 stdio.h 头文件BDE 3. 下列描述正确的是 :( ) A. getchar 函数只能接收一个字符 B. getchar 函数得到的字符可以赋给一个字符变量 C. getchar 函数得到的字符可以赋给一个整型变量 D. getchar 函数得到的字符可以作为表达式的一部分 E.getchar 函数是编程者自定义的函数BCD 4. printf 函数中, 关于格式字符描述正确的是 :( )

10 A. 格式字符 o 表示以八进制无符号形式输出整数 B. 格式字符 u 表示以无符号十进制形式输出整数 C. 格式字符 x 表示以无符号十六进制形式输出整数 D. 格式字符 f 表示以实数形式输出单 双精度数 E. 格式字符 e 表示以浮点数形式输出单 双精度数BCDE 5. 假设 int x,y,z; 若从键盘给 x y z 输入数据, 下列不正确的输入语句是 :( ) A.input x y z; B.scanf("%d%d%d",&x,&y,&z); C.scanf("%d%d%d",x,y,z); D.read("%d%d%d",&x,&y,&z); E.scanf("%d%d%d,&x,&y,&z"); CDE 6. 假设 float x,y,z;, 并通过 scanf("%f%f%f ",&a,&b,&c); 对 a 赋于 10.0,b 赋予 22.0,c 赋予 33.0 的值, 下面正确的输入形式是 :( )( 注 : 符号 代表空格 ) A 10< 回车 >22< 回车 > 33< 回车 > B 10.0< 回车 >22.0< 回车 >33.0< 回车 > C 10.0,22.0,33.0< 回车 > D < 回车 > E < 回车 > BDE 7. 若有 int a,c;char b; 并通过 scanf("%f%c%f ",&a,&b,&c); 对 a 赋于整数 10,b 赋 予字符 M,c 赋予整数 33 的值, 下面正确的输入形式是 :( )( 注 : 符号 代表空格 ) A 10< 回车 >M< 回车 > 33< 回车 > B 10M33< 回车 > C 10 M 33< 回车 > D 10M< 回车 >33< 回车 > E 10M < 回车 >33< 回车 > DE 8. 若有 char ch;, 下面可以对变量 c 正确赋值的语句是 :( ) A.ch = A ; B.getchar(ch); C.ch = getchar(); D.scanf( %c,&ch); E.printf( %c,ch= B ); CDE 9. 下面属于转义符的有 :( ) A. \t B. \n C. %d D. \376 E. \x20 BDE 10. 若 a 为整型变量, 则下列表达式的值为 0 的是 ( ), A.a % a B.a!= a C.3/4 D.3 && 0 E.a = 0 BCDE 第 5 6 章选择与循环结构

11 一 选择题 1. 有以下程序 main( ) int i; for ( i=0; i<3; i++ ) switch ( i ) case 1 : printf("%d ", i); case 2 : printf("%d ", i); 执行后输出结果是 :( ) default : printf("%d ", i); A) B)012 C) D) 有以下程序 int i=1, j=1, k=2; if ( (j++ k++) && i++) printf("%d,%d,%d\n", i, j, k); 执行后输出结果是 :( ) A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 3. 有以下程序 int a=5,b=4,c=3,d=2; if (a>b>c) printf("%d\n", d); else if ( (c-1 >= d) ==1) else printf("%d\n", d+1); printf("%d\n", d+2); 执行后输出结果是 :( ) A)2 B)3 C)4 D) 编译时有错, 无结果 4. 有以下程序 int i=0,s=0; do if (i%2) i++; continue; i++; s += i; while( i<7 ); printf("%d\n", s);

12 执行后输出结果是 :( ) A)16 B)12 C)28 D)21 5. 以下程序的输出结果是 :( ) int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c):(b)); A) 5 B) 4 C) 6 D) 不确定 6. 以下程序中,while 循环的循环次数是 :( ) int i=0; while(i<10) if(i<1) continue; if(i==5) break; i++; A) 1 B) 10 C) 6 D) 死循环, 不能确定次数 7. 以下程序的输出结果是 :( ) main( ) int a=0,i; for(i=1;i<5;i++) switch(i) case 0: case 3: a+=2; case 1: case 2: a+=3; default: a+=5; printf("%d\n",a); A) 31 B) 13 C) 10 D) 以下程序的输出结果是 :( ) int a=4,b=5,c=0,d; d=!a &&!b!c; printf("%d\n",d); A) 1 B) 0 C) 非 0 的数 D) 以下程序的输出结果是 :( )

13 #include int i=0,a=0; while(i<20) for( ; ; ) if((i%10)==0) break; else i--; i+=11; a+=i; printh("%d\n",a); A) 21 B) 32 C) 33 D) 阅读以下程序 :( ) int x; scanf("%d",&x); if(x--<5) printf("%d"x); else printf("%d"x++); 程序运行后, 如果从键盘上输人 5, 则输出结果是 :( ) A)3 B) 4 C) 5 D) 假定 w x y z m 均为 int 型变量, 有如下程序段 : w=1; x=2; y=3; z=4; m=(w<x)?w : x; m=(m<y)?m : y; m=(m<z)?m: z; 则该程序运行后,m 的值是 :( ) A) 4 B) 3 C) 2 D) 以下程序的输出结果是 :( ) int a, b; for(a=1, b=1; a<=100; a++) if(b>=10) break; if (b%3==1) b+=3; continue; printf("%d\n",a); A) 101 B) 6 C) 5 D) 若执行以下程序时从键盘上输入 9, 则输出结果是 :( ) int n; scanf ("%d",&n);

14 if(n++<10) printf ("%d\n",n); else printf("%d\n",n--); A) 11 B) 10 C) 9 D) 有以下程序段 int k=0 while(k=1) k++; 则 while 循环执行的次数是 :( ) A) 无限次 B) 有语法错, 不能执行 C) 一次也不执行 D) 执行 1 次 15. 以下程序执行后 sum 的值是 :( ) int i, sum; for(i=1;i<6;i++) sum+=i; printf("%d\n",sum); A)15 B)14 C) 不确定 D)0 16. 有以下程序段 int x=3 do printf ("%d",x -=2); while (!(--x)); 其输出结果是 :( ) A) 1 B) 3 0 C) 1-2 D) 死循环 17. 若变量 c 为 char 类型, 能正确判断出 c 为小写字母的表达式是 :( ) A) 'a'<=c<= 'z' B) (c>= 'a') (c<= 'z') C) ('a'<=c)and ('z'>=c) D) (c>= 'a')&&(c<= 'z') 18. 以下程序的输出结果是 :( ) float x=0.5; char z='a'; printf("%d\n", (x>1) && (z<'z') ); A) 0 B) 1 C) 2 D) 以下程序的输出结果是 :( )

15 int x=10,y=10,i; for(i=0;x>8;y=i ) printf( %d %d, x--,y); A) B) C) D) 以下程序的输出结果是 :( ) int i; for(i=1;i<=6;i++) if(i%2) printf( # ); continue; printf( * ); printf( \n ); A)#*#*# B)##### C)***** D)*#*#* 21. 以下程序的输出结果是 :( ) int i; for(i='a';i<='i';i++) printf( %c, i+32); printf( \n ); A) 编译不通过, 无输出 B) aceg C)acegi D)abcdefghi 22. 以下程序输出结果是 :( ) main () int m=5; if (m>5) printf ( %d\n, m); else printf ( %d\n, m--); A )7 B )6 C)5 D)4 23. 运行以下程序后, 如果从键盘上输入 china# 回车, 则输出结果为 :( ) #include <stdio.h> int v1=0,v2=0; char ch ; while ((ch=getchar())!='#') switch (ch ) case 'a':

16 case 'h': default:v1++; case '0':v2++; printf( %d,%d\n, v1,v2); A) 2,0 B)5,0 C) 5,5 D)2,5 24. 设有如下定义 : int a=1,b=2,c=3,d=4,m=2,n=2; 则执行表达式 :(m=a>b)&&(n=c>d) 后,n 的值为 :( ) A)1 B)2 C)3 D)0 25. 以下程序的输出结果是 :( ) int i,j,x=0; for (i=0;i<2;i++) x++; for(j=0;j<3;j++) if (j%2) continue; x++; x++; printf( x=%d\n, x); A)x=4 B)x=8 C)x=6 D)x= 设 x 和 y 均为 int 型变量, 则执行以下的循环后,y 值为 :( ) for(y=1,x=1;y<=50;y++) if(x==10)) break; if (x%2==1) x+=5; continue; x-=3; A)2 B)4 C)6 D)8 27. 假定 a 和 b 为 int 型变量, 则执行以下语句后 b 的值为 :( ) a=1;b=10; do b-=a; a++; while (b--<0);

17 A)9 B)-2 C)-1 D)8 28. 设 j 为 int 型变量, 则下面 for 循环语句的执行结果是 :( ) for (j=10;j>3;j--) if(j%3) j--; --j;--j; printf( %d, j); A)6 3 B)7 4 C)6 2 D) 有以下程序 int x, i; for(i=1;i<=50;i++) x=i; if(x%2==0) x++; if(x%3==0) x++; if(x%7==0) x++; printf("%d ",i); 输出结果是 :( ) A)28 B)27 C)42 D) 假定所有变量均已正确说明, 下列程序段运行后 x 的值是 :( ) a=b=c=0;x=35; if(!a) x--; else if(b) ; if(c) x=3; else x=4; A)34 B)4 C)35 D)3 31. 执行表达式 k = ( 10>12? 15 :6>5? 8 :9 ) 后, 变量 k 的值为 :( ) A. 9 B. 8 C. 15 D 以下程序运行后, 如果从键盘上输人 5, 则输出结果是 :( ) main( )

18 int x; scanf("%d",&x); if(x--<5) printf("%d",x); else printf("%d",x++); A 3 B 4 C 5 D 以下程序段的输出结果是 :( ) int k, j, s ; for(k=2;k<6;k++,k++) s=1; for (j=k;j<6;j++) s+=j; printf( %d\n,s); A)9 B)1 C)11 D) 以下程序段的输出是 :( ) int i,j,m=0; for (i=1;i<=15;i+=4) for (j=3;j<=19;j+=4) m++; printf( %d\n,m); A)12 B)15 C)20 D) 以下程序段的输出结果是 :( ) int i, sum; for(i=1;i<6;i++) sum+=sum; printf( %d\n,sum); A)15 B)14 C) 不确定 D)0 36. 下面程序的输出是 :( ) int x=3,y=6,a=0; while (x++!=(y-=1)) a++; if (y<x) break; printf("x=%d,y=%d,a=%d\n",x,y,a); A) x=4,y=4,a=1 B) x=5,y=5,a=1 C) x=5,y=4,a=3 D) x=5,y=4,a=1

19 37. 定义如下变量 :int n=10; 则下列循环的输出结果是 :( ) while (n>7) n--; printf("%3d",n); A) B) C) D) 以下程序段的输出结果是 :( ) int x=3; do printf("%3d",x-=2; while (!(--x)); A) 1 B) 3 0 C) 1-2 D) 死循环 39. 执行下面的程序后,a 的值为 :( ) int a,b; for (a=1,b=1;a<100;a++) if (b>=20) break; if (b%3==1) b+=3; continue; b-=5; A) 7 B) 8 C) 9 D) 读程序 : int num=0; while (num<=2) num++; printf("%3d",num); 上面程序的输出结果是 :( ) A) 1 B) 2 2 C) D) 以下循环体的执行次数是 :( ) int i,j; for(i=0,j=1;i<=j+1;i+=2,j--) printf("%d \n",i); A) 3 B) 2 C) 1 D) 0

20 42. 在 C 语言的循环语句 for,while,do-while 语句中, 用于直接中断最内层循环的语句是 :( ) A) switch B) continue C) break D) if 二 判断题 : 1. ( F ) 用 1 作 while 循环的判断条件, 则循环一次也不执行 2. ( F )for 循环表达式的括号内的 3 个表达式均不可以省略 3. ( T ) 语句 while(!e); 中的条件!E 等价于 E==0 4. ( T ) 语句 while(e); 中的条件 E 等价于 E!=0 5. ( F ) 若有 for( ; ; ), 是指循环体执行 0 次 6. ( F ) 程序有死循环的时候, 上机编译不能通过 7. ( T ) 强制终止死循环可以使用 CTRL+BREAK 组合键 8. ( F ) 执行 for(i=0;i<3;i++); 后 I 的值为 2 9. ( F ) 执行 for(i=0,j=0;i<2;i++);j=j+1; 后 j 的值为 ( T ) 所有类型的循环都可以进行嵌套使用 11. ( T ) 利用 break 语句可以提前终止循环的执行 12. ( F ) 利用 continue 语句可以提前终止循环的执行 13. ( F )break 语句和 continue 语句不可以同时出现在同一个循环体内 14. ( F )switch 语句中, 每一个 case 的冒号后面都必须至少跟有一条语句 15. ( F ) 关于 if 语句中, 条件表达式只能是关系表达式或逻辑表达式三 多选题 1 关于 if 语句, 下列叙述正确的是 :( ) A.if 语句中, 条件表达式只能是关系表达式或逻辑表达式 B.if 语句中, 条件表达式的括号不可以省略 C.else 子句不能作为一个独立的语句单独使用, 必须是 if 语句的一部分 D.if 和 else 后面可以包含多个操作语句, 此时要用一对大括号把这多个语句对括起来成为一个复合语句 CD 2 以下 4 条语句, 没有语法错误的是 () A.if (a>b) m =a; B.if (a); C.if ((a=b)>=0) m=a; D.if ((a=b;)>=0) m=a; BC 3 如果不加花括号表示 else 与 if 的配对关系, 则 else 与 if 的匹配方法, 不正确的是 A.else 与它上面最远的 if 配对 B.else 与它上面最近的 if 配对 C.else 与离它最近的 if 配对 D.else 与它上面最近的且没有和其他 else 配对的 if 配对BC 4 关于条件运算符的叙述正确的是 A. 条件运算符的优先级别比关系运算符和算术运算符都低 B. 条件运算符是 C 语言中惟一的一个三目运算符 C. 条件运算符的结合方向是 自右至左 D. 条件运算符可以替代任何 if 语句的功能BC 5 关于 switch 语句叙述正确的是 A. 语句中,case 的冒号后面允许没有语句 B.switch 语句中, 每一个 case 的冒号后面都允许跟有多条语句

21 C. 在与 switch 语句配套的 case 语句中所使用的表达式可以是变量或常量 D.switch 语句中, 可以没有 default 语句 BD 6 在计数循环 for( 表达式 1; 表达式 2; 表达式 3) 中, 可以省略的表达式是 :( ) A. 表达式 1 B. 表达式 2 C. 表达式 3 D. 三个表达式都可以 E. 一个都不能少BCD 7 下列语句段是死循环的是 ( ) A.n=100; while(n) n=n%100+1; C.for(;;); E.x=0; do x++; BCE while(x>=0); B.s=33; while(s++%2+s%2) s++; D.for(i=1;;) if(--i)break; 第 7 章 数组 一 选择题 1 若有以下说明语句 : int a[12]=1,2,3,4,5,6,7,8,9,10,11,12; char c= a,d,g; 则数值为 4 的表达式是 :( ) A a[g-c] B a[4] C a[ d - c ] D a[ d -c] 2 假设 int 型变量占两个字节的存储单元, 若有定义 : int x[10]=0,2,4; 则数组 x 在内存中所占字节数为 :( ) A 3 B 6 C 10 D 20 3 下列合法的数组定义是 :( ) A int a[]= string ; C char a= string ; 4 若给出以下定义 : char x[]= abcdefg ; B int a[5]=0,1,2,3,4,5; D char a[]=0,1,2,3,4,5; char y[]= a, b, c, d, e, f, g ; 则正确的叙述为 :( ) A 数组 x 和数组 y 等价 C 数组 x 的长度大于数组 y 的长度 5 下面程序段的输出结果是 :( ) int j; int x[3][3]=1,2,3,4,5,6,7,8,9; for (j=0;j<3;j++) printf( %d,x[j][2-j]); B 数组 x 和数组 y 的长度相同 D 数组 y 的长度大于数组 x 的长度 A B C D 3 6 9

22 6 下列程序运行后的输出结果是:( ) int n[3],t,j,k; for(t=0;t<3;t++) n[t]=0; k=2; for(t=0;t<k;t++) for(j=0;j<3;j++) n[j]=n[t]+1; printf( %d\n,n[1]); A 2 B 1 C 0 D 3 7 有以下程序 int p[7]=11,13,14,15,16,17,18, i=0,k=0; while(i<7 && p[i]%2) k =k+ p[i]; i++; printf("%d\n", k); 执行后输出结果是 :( ) A 58 B 56 C 45 D 24 8 以下能正确定义数组并正确赋初值的语句是:( ) A int N=5,b[N][N]; B int a[1][2]=1,3; C int c[2][]= 1,2,3,4; D int d[3][2]=1,2,3,4; 9 有以下程序 int m[][3]=1,4,7,2,5,8,3,6,9; int i,j,k=2; for(i=0; i<3; i++) printf("%d ",m[k][i]); 执行后输出结果是 :( ) A B C D 以下能正确定义一维数组的选项是:( ) A int num[]; B int num[0..100]; C) #define N 100 D) int N=100; int num[n]; int num[n]; 11 下列选项中正确的语句组是:( ) A char s[8]; s="beijing"; B char *s; s="beijing"; C char s[8]; s="beijing"; D char *s; s="beijing";

23 12 有以下程序段 int a[10]=1,2,3,4,5,6,7,8,9,10,*p=&a[3],b; b=p[5]; b 中的值是 :( ) A 5 B 6 C 8 D 9 13 有以下程序 main( ) char a[]="abcdefg",b[10]="abcdefg"; printf("%d %d\n",sizeof(a),sizeof(b)); 执行后输出结果是 :( ) A 7 7 B 8 8 C 8 10 D 有以下程序的输出结果是:( ) void swap1(int c[]) int t; t=c[0];c[0]=c[1];c[1]=t; void swap2(int c0,int c1) int t; t=c0;c0=c1;c1=t; main( ) int a[2]=3,5,b[2]=3,5; swap(a); swap2(b[0],b[1]); printf("%d %d %d %d\n",a[0],a[1],b[0],b[1]); A B C D 有以下程序 int f(int b[][4]) int i,j,s=0; for(j=0;j<4;j++) i=j; if(i>2) i=3-j; s+=b[i][j]; return s; main( ) int a[4][4]=1,2,3,4,0,2,4,5,3,6,9,12,3,2,1,0; printf("%d\n",f(a)); 执行后的输出结果是 :( ) A 12 B 11 C 18 D 16

24 16 有以下程序 void sort(int a[],int n) in t i,j,t; for(i=0;i<n-1;i+=2) for(j=i+2;j<n;j+=2) if(a[i]<a[j]) t=a[i];a[i]=a[j];a[j]=t; int aa[10]=1,2,3,4,5,6,7,8,9,10,i; sort(aa,10); for(i=0;i<10;i++) printf("%d",aa[i]); printf("\n"); 其输出结果是 :( ) A 1,2,3,4,5,6,7,8,9,10, B 10,9,8,7,6,5,4,3,2,1, C 9,2,7,4,5,6,3,8,1,10, D 1,10,3,8,5,6,7,4,9,2, 17 有以下程序 void f(int a[],int i,int j) int t; if(i<j) t=a[i]; a[i]=a[j];a[j]=t; f(a,i+1,j-1); main( ) int i,aa[5]=1,2,3,4,5; f(aa,0,4); for(i=0;i<5;i++) printf("%d,",aa[i]); printf("\n"); 执行后输出结果是 :( ) A 5,4,3,2,1, B 5,2,3,4,1, C 1,2,3,4,5, D 1,2,3,4,5, 18 以下程序的输出结果是 :( ) char cf[3][5]="aaaa","bbb","cc"; printf("\"%s\"\n",ch[1]); A "AAAA" B "BBB" C "BBBCC" D "CC" 19 以下程序的输出结果是 :( )

25 int b[3][3]=0,1,2,0,1,2,0,1,2,i,j,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++) t=t+b[i][b[j][j]]; printf("%d\n",t); A 3 B 4 C 1 D 9 20 有以下程序 int aa[4][4]=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6; int i,s=0; for(i=0;i<4;i++) s+=aa[i][1]; printf("%d\n",s); 程序运行后的输出结果是 :( ) A 11 B 19 C 13 D 若有以下定义语句: char s[10],s= abcd ;printf( %s\n,s); 则运行结果是 :( ) A 输出 abcd B 输出 a C 输出 ab cd D 编译不通过 22 不能把字符串 Hello! 赋给数组 b 的语句是 :( ) A char b[10]= H, e, l, l, o,! ; B char b[10];b= Hello! ; C char b[10]; strcpy(b, Hello! ); D char b[10]= Hello! ; 23 若有以下程序段: char str[]= ab\n\012\\\ ; printf( %d,strlen(str)); 该程序段的输出结果是 :( ) A 3 B 4 C 6 D 函数调用 strcat(strcpy(str1,str2),str3) 的功能是 _:( ) A 将串 str1 复制到串 str2 中后在连接到串 str3 之后 B 将串 str1 连接到串 str2 之后再复制到串 str3 之后 C 将串 str2 复制到串 str1 中后再将串 str3 连接到串 str1 之后 D 将串 str2 连接到串 str1 中后再将串 str1 复制到串 str3 中 25 下列程序的输出结果是:( ) char ch[7]= 65ab21 ; int j,s=0; for(j=0;ch[j])>= 0 &&ch[j]<= 9 ;j+=2) s=10*s+ch[j]- 0 ; printf( %d\n,s);

26 A 12ba56 B C 6 D 设已定义 char s[]= \ Name\\Address\ \n ;, 则字符串 s 所占的字节数是 :( ) A 19 B 18 C 15 D 设已定义 char c[8]= Tianjin 和 int j, 则下面的输出函数调用中错误的是 :( ) A printf( %s,c); C puts(c); B for(j=0;j<8;j++) printf( %c,c[j]); D for(j=0;j<8;j++) puts(c[j]); 28 设已定义 char a[10] 和 int j, 则下面输入函数调用中错误的是 :( ) A scanf( %s,a); C gets(a); B for(j=0;j<9;j++) scanf( %c,a[j]); D for(j=0;j<9;j++) scanf( %c,&a[j]); 29 设已定义 char x[8] 和 int j, 为了给该数组赋值, 下面语句中正确的是 :( ) A x[8]= Turbo C ; C x[]= Turbo C ; 30 有如下程序, int n[5]=0,0,0,j,k=2; for(j=0;j<k:j++) n[j]=n[j]+1; printf( %d\n,n[k]); 该程序的输出结果是 :( ) B x= Turbo C ; D for(j=0;j<7;j++) x[i]=getchar(); A 不确定的值 B 2 C 1 D 在 C 语言中, 一维数组的定义方式为 : 类型说明符数组名 ( ) A.[ 常量表达式 ] B.[ 整型表达式 ] C.[ 整型常量 ] 或 [ 整型表达式 ] D.[ 整型常量 ] 32. 若有说明 :int a[10];, 则对 a 数组元素的正确引用是 :( ) A.a[10] B.a[3.5] C.a(5) D.a[10-10] 33. 在 C 语言中, 引用数组元素时, 其数组下标的数据类型允许是 :( ) A. 字符常量 B. 浮点型常量 C. 整型常量或整型表达式 D. 任何类型的表达式 34. 下列数组定义 初始化或赋值语句中, 正确的是 :( ) A.int x[5]=1,2,3,4,5,6; B.int n=8; int score[n]; C.int a[8]; a[8]=100; D.int x[]=1,2,3,4,5,6; 35. 合法的数组说明语句是 :( ) A.int a[]= string ; B.char a[]=0,1,2,3,4,5; C.char a = string ; D.int a[5]=0,1,2,3,4,5; 36. 已知 int a[][3]=1,2,3,4,5,6,7;, 则数组 a 的第一维的大小是 :( ) A.2 B.3 C.4 D. 无确定值

27 37. 若有说明 :int a[3][4];, 则对 a 数组元素的非法引用是 :( ) A.a[0][2*1] B.a[1][3] C.a[4-2][0] D.a[0][4] 38. 已有定义 :char a[]="xyz",b[]='x','y','z';, 以下叙述中正确的是 :( ) A. 数组 a 和数组 b 的长度相同 B.a 数组长度小于 b 数组长度 C.a 数组长度大于 b 数组长度 D. 数组 a 和数组 b 等价 39. 对两个数组 a 和 b 进行如下初始化 : char a[]= ABCDEF ; char b[]= A, B, C, D, E, F ; 则以下叙述正确的是 :( ) A. 数组 a 与数组 b 完全相同 B. 数组 a 与数组 b 长度相同 C. 数组 a 与数组 b 中都存放字符串 D. 数组 a 比数组 b 长度长 40. 有下面的程序段 : char a[3],b[]= China ; a=b; printf( %s,a); A. 运行后将输出 China B. 运行后将输出 Ch C. 运行后将输出 Chi D. 编译出错 41. 下面程序的运行结果是 :( ) char c[5]= a, b, \0, c, \0 ; printf( %s,c); A.ab B.abc C.ab\0 D.ab\0c\0 42. 设有数组定义 :char array[]= china ;, 则数组 array 所占的空间为 :( ) A.4 个字节 B.5 个字节 C.6 个字节 D.7 个字节 43. 判断字符串 s1 是否大于字符串 s2, 应当使用 :( ) A.if(s1>s2) B.if(strcmp(s1,s2)) C.if(strcmp(s2,s1)>0) D.if(strcmp(s1,s2)>0) 44. 若有说明 :int a[][4]=0,0;, 则下面不正确的叙述是 :( ) A. 数组 a 的每个元素都可得到初值 0 B. 二维数组 a 的第一维大小为 1 C. 因为二维数组 a 中初值的个数不能被第二维大小的值整除, 则第一维的大小等于所得商数再 加 1, 故数组 a 的行数为 1 D. 只有元素 a[0][0] 和 a[0][1] 可得到初值 0, 其余元素均得不到初值 45. 下列语句中, 不正确的是 :( ) A.char str[5]="hello"; B.char str[]='h','e','l','l','o','\0'; C.char str[5]="hi"; D.char str[100]="";

28 46. 下面错误的初始化语句是 :( ) A.char str[]="hello"; B.char str[100]="hello"; C.char str[]='h','e','l','l','o'; D.char str[]='hello'; 47. 定义了一维 int 型数组 a[10] 后, 下面错误的引用是 :( ) A.a[0]=1; B.a[10]=2; C.a[0]=5*2; D.a[1]=a[2]*a[0]; 48. 下面的二维数组初始化语句中, 错误的是 :( ) A.float b[2][2]=0.1,0.2,0.3,0.4; B.int a[][2]=1,2,3,4; C.int a[2][]= 1,2,3,4; D.float a[2][2]=0; 49. 引用数组元素时, 数组下标可以是 :( ) A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可 50. 定义了 int 型二维数组 a[6][7] 后, 数组元素 a[3][4] 前的数组元素个数为 :( ) A.24 B.25 C.18 D strlen("a\0b\0c") 的结果为 :( ) A.0 B.1 C.2 D 下面程序的运行结果是 :( ) int a[][3]=1,2,3,4,5,6; printf("%d",a[1][1]); A.3 B.4 C.5 D 下面程序的运行结果是 :( ) char s1[20]="good!"; char s2[15]="ab"; printf("%d",strlen(strcpy(s1,s2))); A.20 B.15 C.5 D 下面程序的运行结果是 :( )

29 char s1[20]="abcdef"; int i=0; while(s1[i++]!='\0') printf("%c", s1[i++]); A.ABCDEF B.BDF C.ABCDE D.BCDE 55. 下面程序的运行结果是 :( ) int n[2]=0,i,j,k=2; for(i=0;i<k;i++) for(j=0;j<k;j++) n[j]=n[i]+1; printf("%d\n",n[k]); A. 不确定的值 B.3 C.2 D 下面程序的运行结果是 :( ) int x[]=22,33,44,55,66,77,88; int k,y=0; for (k=1;k<=4;k++) if (x[k]%2==1) y++; printf("%d",y); A.0 B.1 C.2 D 下面程序的运行结果是 :( ) int a[3][3]=1,2,3,4,5,6,i,j,s=0; for(i=1;i<3;i++) for(j=0;j<i;j++) s+=a[i][j]; printf("%d",s); A.14 B.19 C.20 D 下面程序的运行结果是 :( ) char ch[7]= "12ab56"; int i,s=0; for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2) s=10*s+ch[i]-'0'; printf("%d",s);

30 A.1 B.1256 C.12ab56 D.l2 59. 下面程序的运行结果是 :( ) char s[]="ab1c2d4e"; int i; i=0; while(s[i]!='\0') if(s[i]>='a'&&s[i]<='z') printf("%c",s[i]); i++; A.ab B.ab1c2d4e C.abcde D.a 60. 下面程序的运行结果是 :( ) int i=0,n=0; char s[10]="298h01"; for(i=0;s[i]!='\0';i++) if(s[i]<='9'&&s[i]>='0') n=n*10+(s[i]-'0'); else break; printf("%d\n",n); A.298h01 B C.01 D.298 二 判断题 : 1. ( F ) 在程序中可以对数值数组中的数据进行整体使用 2. ( T ) 如果 strcmp(s1,s2) 的返回值为一个负数, 则表明字符串 s1 一定小于字符串 s2 3. ( F ) 字符数组的输出不能一次性的整体输出 4. ( T ) 用 scanf 函数输入的字符串不可以带空格 5. ( T ) 用 gets 函数输入的字符串可以带空格 6. ( F ) 实现两个字符串的复制可以使用 str1=str2; 语句 7. ( T ) 使用 strcpy 函数可以实现两个字符串的复制 8. ( T ) 使用 strcat 函数可以实现两个字符串的连接 9. ( F ) 使用 strlen 函数可以求出一个字符串的实际长度 ( 包含 \0 字符 ) 10. ( F ) 如有定义 char a[]= student ; 则数组 a 的长度为 ( F ) 如有定义 char a[20]; 则可以通过 a= I am a boy ; 给 a 赋值 12. ( T ) 如有定义 int a[2][3]; 则数组 a 的最后一个元素为 a[1][2] 13. ( T ) 如有定义 int a[3][4]=0; 则数组 a 的所有元素初值均为 ( F )C 语言中数组名实质上是数组的首地址, 是一个变量地址, 可对其进行赋值 15. ( F ) 构成数组的各个元素可以有不同的数据类型

31 16. ( F ) 若有说明 :int a[10];, 则可以 a[10] 引用数组 a 的第 10 个元素 17. ( T ) 引用数组元素时, 其数组下标的数据类型允许的是 : 整型常量或整型表达式 18. ( T ) 若有 int a[10]=6,7,8,9,10;, 则是将 5 个初值依次赋给 a[0] 至 a[4] 19. ( T ) 一个一维数组, 它的每一个元素也是类型相同的一维数组时, 便构成二维数组 20. ( T ) 在 C 语言中, 允许用字符串来直接初始化字符数组 21. ( F ) 字符数组的输出不能一次性的整体输出 22. ( F ) 使用 strcat 函数可以实现两个字符串的复制 三 多选题 1 以下关于数组的描述中, 正确的有 :( ) 在定义数组时, 有时可以将该数组的维数省略 数组名实质上是数组的首地址, 是一个变量地址, 可对其进行赋值 构成数组的各个元素可以有不同的数据类型 有定义 :int a[3]; 则定义了 a[0] a[1] a[2] 三个数组元素 在程序中可以对数值数组中的数据进行整体使用D 2 以下关于数组的描述中, 错误的有 :( ) 引用数组元素时, 其数组下标的数据类型允许的是 : 整型常量或整型表达式 可以通过数组名来整体引用一个数组 在程序中可以对数值数组中的数据进行整体使用 若有说明 :int a[10];, 则可以 a[10] 引用数组 a 的第 9 个元素 若有说明 :int a[10];, 则可以 a[10] 引用数组 a 的第 10 个元素CDE 3 以下关于数组的描述中, 错误的有 :( ) 可以通过如下语句来完成对一个数组的输入 :int a[10]; scanf("%d",a); 可以通过如下语句来完成对一个数组的输入 :int a[10]; scanf("%d",&a); 若有 int a[10]=6,7,8,9,10;, 则是将 5 个初值依次赋给 a[0] 至 a[4] 数组元素可以像普通变量一样使用 int a[9]; 则数组 a 的下标范围是 1-9 BE 4 以下关于数组的描述中, 正确的有 :( ) 数组名实质上是数组的首地址, 是一个常量, 不能对其赋值 在定义数组时, 有时可以将该数组的维数省略 一个一维数组, 它的每一个元素也是类型相同的一维数组时, 便构成二维数组 如有定义 int a[3][4]=0; 则数组 a 的所有元素初值均为 0 可以通过数组名来整体引用一个数组BCD 5 以下关于数组的描述中, 错误的有 :( ) 如有定义 int a[2][3]; 则数组 a 的最后一个元素为 a[1][2] 一个一维数组, 它的每一个元素也是类型相同的一维数组时, 便构成二维数组 若有说明 :static int a[3][3]; 那么数组 a 中每个元素初值为 0 在定义二维数组时, 可以将该数组的两个维数全部省略 如有定义 char a[20]; 则可以通过 a="i am a boy"; 给 a 赋值E 6 若有说明 :int a[][4]=0,0;, 则下面正确的叙述有 :( ) 数组 a 的每个元素都可得到初值 0 二维数组 a 的第一维大小为 1 因为二维数组 a 中初值的个数不能被第二维大小的值整除, 则第一维的大小等于所得商数再加 1,

32 故数组 a 的行数为 1 只有元素 a[0][0] 和 a[0][1] 可得到初值 0, 其余元素均得不到初值 只有元素 a[1][1] 和 a[1][2] 可得到初值 0, 其余元素均得不到初值BC 7 以下关于数组的描述中, 正确的有 :( ) 若有定义 char a[]="hello";, 则数组 a 的长度为 6 有定义 char a[3]; 则定义了 a[1] a[2] a[3] 三个数组元素 构成字符数组的各个元素必须是字符类型的数据 可以通过数组名来整体引用一个数组 设有数组定义 char array [ ]="China"; 则数组 array 所占的空间为 5 个字节C 8 以下关于数组的描述中, 正确的有 :( ) 在 C 语言中, 允许用字符串来直接初始化字符数组 若有定义 char a[20];, 则可以通过 a="i am a boy"; 给 a 赋值 若有 char a[10]=1,2,3;, 则是将 3 个初值依次赋给 a[1] 至 a[3] 构成字符数组的各个元素必须是字符类型的数据 数组名实质上是数组的首地址, 是一个常量, 不能对其赋值DE 9 以下关于数组的描述中, 错误的有 :( ) 字符数组的输出不能一次性的整体输出 若有 char a[10]=1,2,3;, 则是将 3 个初值依次赋给 a[0] 至 a[2] 构成字符数组的各个元素可以是不同数据类型的元素 构成字符数组的各个元素必须是字符类型的数据 若有定义 char b[]="hello";, 则数组 b 的长度为 6 C 10 下列语句中, 正确的有 :( ) char str[5]="hello"; char str[]='h','e','l','l','o','\0'; char str[5]="hi"; char str[100]=""; char str[3]="this"; CD 11 函数调用 strcat(strcpy(str1,str2),str3) 的功能, 以下说法错误的有 :( ) 将串 str1 复制到串 str2 中后在连接到串 str3 之后 将串 str1 连接到串 str2 之后再复制到串 str3 之后 将串 str2 复制到串 str1 中后再将串 str3 连接到串 str1 之后 将串 str2 连接到串 str1 中后再将串 str1 复制到串 str3 中 将串 str2 连接到串 str1 中后再将串 str3 复制到串 str1 中BDE 12 以下关于数组的描述中, 正确的有 :( ) 在定义数组时, 有时可以将该数组的维数省略数组元素可以像普通变量一样使用若有 int a[10]=6,7,8,9,10;, 则是将 5 个初值依次赋给 a[0] 至 a[4] 如有定义 char a[]="student"; 则数组 a 的长度为 7 若有定义 double x[3][5]; 则 x 数组中行下标的下限为 0, 列小标的上限为 4 BCE 13 定义了一维 int 型数组 a[10] 后, 下面正确的引用有 :( )

33 a[0]=1; a[10]=2; a[0]=5*2; a[1]=a[2]*a[0]; a[2]=a[1]+a[0]; CDE 第 8 章函数 一 选择题 1. 若调用一个函数, 且此函数中没有 RERUrn 语句, 则关于该函数正确的说法是 :( ) A. 没有返回值 B. 返回若干个系统默认值 C. 能返回一个用户所希望的函数值 D. 返回一个不确定的值 2. 在 c 语言中以下不正确的说法是 :( ) A. 实参可以是常量 变量 或表达式 B. 形参可以是常量 变量或表达式 C. 实参可以为任意类型 D. 形参应与其对应的实参类型一致 3. 以下程序有语法性错误, 有关错误原因的正确说法是 :( ) int G=5,k; void prt_char(); k=prt_char(g); A. 语句 void prt_char(); 有错, 它是函数调用语句, 不能用 void 说明 B. 变量名不能使用大写字母 C. 函数说明和函数调用语句之间有矛盾 D. 函数名不能使用下划线 4. 以下正确的说法是 :( ) A. 函数的定义可以嵌套, 但函数的调用不可以嵌套 B. 函数的定义不可以嵌套, 但函数的调用可嵌套 C. 函数的定义和调用均不可以嵌套 D. 函数的定义和调用均可以嵌套 5. 若使用一个数组名作函数实参, 则以下正确的说法是 :( ) A. 必须在主调函数中说明此数组的大小 B. 实参数组类型与形参数组类型可以不匹配 C. 在被调用函数中, 不需要考虑形参数组的大小

34 D. 实参数组名与形参数组名必须一致 6. 在一个函数内部定义的变量是 :( ) A 简单变量 B 局部变量 C 全局变量 D 标准变量 7. 若已定义的函数有返回值, 则以下关于该函数调用的叙述中错误的是 :( ) A) 函数调用可以作为独立的语句存在 B) 函数调用可以作为一个函数的实参 C) 函数调用可以出现在表达式中 D) 函数调用可以作为一个函数的形参 8. 已定义以下函数 fun(int*p) return *p; 该函数的返回值是 :( ) A) 不确定的值 B) 形参 p 中存放的值 C) 形参 p 所指存储单元中的值 D) 形参 p 的地址值 9. 以下所列的各函数首部中, 正确的是 :( ) A void play(var :Integer,var b:integer) B void play(int a,b) C void play(int a,int b) D Sub play(a as integer,b as integer) 10. 当调用函数时, 实参是一个数组名, 则向函数传送的是 :( ) A 数组的长度 B 数组的首地址 C 数组每一个元素的地址 D 数组每个元素中的值 11. 在调用函数时, 如果实参是简单变量, 它与对应形参之间的数据传递方式是 :( ) A 地址传递 B 单向值传递 C 由实参传给形参, 再由形参传回实参 D 传递方式由用户指定 12. 以下函数值的类型是 :( ) fun ( float x ) float y; y= 3*x-4; return y; A int B 不确定 C void D float 13. 下列函数的功能是 :( ) int fun1(chat* x) char *y=x; while(*y++); return(y-x-1);

35 A) 求字符串的长度 B 比较两个字符串的大小 C 将字符串 X 复制到字符串 Y D 将字符串 X 连接到字符串 Y 后面 14. 下面程序的输出结果是 :( ) void prty(int * x) printf("%d\n",++*x); int a=25; prtv(&a); A 23 B 24 C 25 D 以下对 C 语言函数的有关描述中, 正确的是 :( ) A 只能把实参的值传送给形参, 形参的值不能传送给实参 B C 函数既可以嵌套定义又可以递归调用 C 函数必须有返回值, 否则不能使用函数 D C 程序中所有函数都可以嵌套调用 16. 以下叙述中不正确的是 :( ) A) 在 C 中, 函数体中定义的动态变量可以赋初值, 每调用一次, 赋一次初值. B 在 C 中, 函数体中定义的静态变量可以赋初值, 每调用一次, 赋一次初值. C 在 C 中, 局部变量的隐含类别是自动存储类别. D) 在 C 中, 在调用函数时, 实在参数和对应形参在类型上只需赋值兼容. 17. 以下叙述中不正确的是 :( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是局部变量 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效 18. 有以下程序 void fun (int a,int b,int c) a=456; b=567; c=678; int x=10, y=20,z=30; fun (x,y,z); printf("%d,/%d,%d\n",x,y,z); 输出结果是 :( ) A 30,20,10 B 10,20,30 C 456,567,678 D 678,567, 有以下程序 ( ) int fun(int x,int y,int *cp,int *dp) *cp=x+y; *dp=x-y; int a, b, c, d; a=30; b=50; fun(a,b,&c,&d);

36 printf("%d,%d\n", c, d); 输出结果是 :( ) A 50,30 B 30,J50 C 80,-20 D 80, 下列程序执行后的输出结果是 ( ) void func(int *a,int b[]) b[0]=*a+6; int a,b[5]; a=0; b[0]=3; func(&a,b); printf( %d \n,b[0]); A 6 B 7 C 8 D 一个完整的可运行的 C 源程序中,( ) A 可以有一个或多个函数 B 必须有且仅有一个主函数 C 可以没有主函数 D 必须有主函数和其他函数 22. 下述函数定义形式正确的是 ( ) A int f(int x; int y) B int f(int x,y) C int f(int x, int y) D int f(x,y: int) 23. 关于函数参数, 说法正确的是 ( ) A 实参与其对应的形参各自占用独立的内存单元 B 实参与其对应的形参共同占用一个内存单元 C 只有当实参和形参同名时才占用同一个内存单元 D 形参是虚拟的, 不占用内存单元 24. 一个函数的返回值由 ( ) 确定 A return 语句中的表达式 B 调用函数的类型 C 系统默认的类型 D 被调用函数的类型 25. 以下叙述中正确的是 ( ) A C 语言程序总是从第一个定义的函数开始执行 B 在 C 语言程序中, 要调用的函数必须在 函数中定义 C C 语言程序总是从 函数开始执行 D C 语言程序中的 函数必须放在程序的开始部分 26. 以下函数 fff(float x) printf( %d\n,x*x);

37 的类型是 ( ) A 与参数 x 的类型相同 B void 类型 C int 类型 D 无法确定 27. 以下对 C 语言函数的描述中, 正确的是 ( ) A C 程序由一个或一个以上的函数组成 B C 函数既可以嵌套定义又可以递归调用 C 函数必须有返回值, 否则不能使用函数 D C 程序中调用关系的所有函数必须放在同一个程序文件中 28. 以下叙述中不正确的是 ( ) A 在 C 语言中, 调用函数时, 只能把实参的值传送给形参, 形参的值不能传送给实参 B 在 C 的函数中, 最好使用全局变量 C 在 C 语言中, 形式参数只是局限于所在函数 D 在 C 语言中, 函数名的存储类别为外部 29. 在一个源文件中定义的外部变量的作用域为 ( ) A 本文件的全部范围 B 本程序的全部范围 C 本函数的全部范围 D 定义该变量的位置开始至本文件结束 30. 有以下函数调用语句 : func((exp1,exp2),(exp3,exp4,exp5)); 其中含有的实参个数和是 ( ) A 1 B 2 C 4 D C 语言中形参的默认存储类别是 ( ) A 自动 (auto) B 静态 (static) C 寄存器 (register) D 外部 (extern) 32. 以下正确的函数形式是 ( ) A double fun(int x,int y) z=x+y; return z; B fun(int x,y) int z; return z; C fun(x,y) int x,y; double z; z=x+y; return z; D double fun(int x,int y) double z; z=x+y; return z; 33. 在一个源程序文件中定义的全局变量的有效范围为 ( ) A 一个 C 程序的所有源程序文件 B 该源程序文件的全部范围 C 从定义处开始到该源程序文件结束 D 函数内全部范围

38 34. 下列函数中, 能够从键盘上获得一个字符数据的函数是 ( ) A puts( ) B putchar( ) C getchar( ) D gets( ) 35. 以下程序的输出结果是 ( ) fun(int a,int b,int c) c=a+b; int c; fun(2,3,c); printf( %d\n,c); A 2 B 3 C 5 D 无定值 36. 分析以下程序的运行结果 ( ) func(int a,int b) int temp=a; a=b; b=temp; int x,y; x=10; y=20; func(x,y); printf(( %d,%d\n,x,y); A 10,20 B 10,10 C 20,10 D 20, 下面程序的输出是 ( ) fun(int x) static int a=3; a+=x; return(a); int k=2,m=1,n; n=fun(k); n=fun(m); printf( %d,n);

39 A 3 B 4 C 6 D 以下程序输出的结果是 ( ) int func(int a,int b) return(a+b); int x=2,y=5,z=8,r; r=func(func(x,y),z); printf( %d\n,r); A 12 B 13 C 14 D 以下程序的输出结果是 ( ) int a,b void fun() a=100; b=200; int a=5,b =7; fun(); printf( %d%d \n,a,b); A B 57 C D 以下程序的输出结果是 ( ) int x=3; int i; for(i=1;i<x;i++) incre(); incre() static int x=1; x*=x+1; printf( %d,x); A 33 B 22 C 26 D 25

40 二 判断题 1 ( F ) 函数定义 void max(int a,int b) 表示该函数的返回值不确定 2 ( T ) 在 C 语言中, 函数体中变量的隐含存储类别是自动变量 auto 3 ( F )return 语句作为函数的出口, 在一个函数体内只能有一个 4 ( T ) 在 C 程序中, 函数不能嵌套定义, 但可以嵌套调用 5 ( F ) C 语言的源程序中必须包含库函数 6 ( F ) 在 C 程序中, 函数调用不能出现在表达式语句中 7 ( F ) 在 C 函数中, 形参可以是变量 常量或表达式 8 ( F ) 在主函数 main( ) 中定义的变量都可以在其它被调函数中直接使用 9 ( T ) 在 C 语言中, 一个函数一般由两个部分组成, 它们是函数说明和函数体 10 ( F )C 语言程序中的 main( ) 函数必须放在程序的开始部分 11 ( F ) 若定义的函数没有参数, 则函数名后的圆括号可以省略 12 ( T ) 函数的函数体可以是空语句 13 ( T ) 函数的实参和形参可以是相同的名字 14 ( T ) 函数调用中, 形参与实参的类型和个数必须保持一致 15 ( F )C 语言中函数返回值的类型由 return 语句中的表达式的类型决定 16 ( T ) 外部类型的变量只能定义一次, 但可在不同地方声明多次 17 ( F ) 外部类型的变量作用范围大, 编程中应多用外部变量 三 多选题 1. 以下叙述中正确的有 ( ) 一个 C 语言程序有且仅有一个 main 函数 C 语言程序中,main 函数是没有参数的 一个函数通过其他函数间接的调用了自身, 这种情况也是一种递归调用 main 函数是由系统调用的 若要通过函数参数带回多个返回值, 则应使用按地址传送的参数结合方式 CDE 2. 下面叙述中, 正确的有 ( ) 函数的定义不能嵌套, 但函数调用可以嵌套 为了提高可读性, 编写程序时应该适当使用注释 变量定义时若省去了存储类型, 系统将默认其为静态型变量 函数中定义的局部变量的作用域在函数内部 函数必须有返回值, 否则不能使用函数 BD 3. 以下不正确的说法有 ( ) 定义函数时, 形参的类型说明可以放在函数体内 return 后边的值不能为表达式 函数返回值的类型可能会与函数的计算结果类型不一致 在不同的函数中可以使用相同名字的变量 如果形参与实参的类型顺序不一致, 以实参顺序为准 BE 4. 以下叙述中, 正确的描述是有 ( ) 函数之内定义的变量称为内部变量, 内部变量是全局变量 在一个函数中既可以使用本函数中的局部变量, 又可以使用外部变量 外部变量定义和外部变量说明的含义不同 外部变量与局部变量的作用范围不同

41 在 C 的函数中, 最好使用全局变量CD 5. 以下正确的说法有 ( ) C 语言程序的基本组成单位是函数函数必须要有返回值一个函数的类型为 void, 在定义时, 可以省略 void 函数声明是一条 C 语句 return 语句只能返回一个值DE 6. 以下叙述中正确的有 ( ) 调用函数时, 只能把实参的值传送给形参, 形参的值不能传送给实参函数的实参可以是常量 变量和表达式形式参数只是局限于所在函数函数定义时的函数首部不是语句, 后面不能跟分号函数名的存储类别为外部BCDE 7. 以下对 C 语言函数的有关描述中, 正确的有 ( ) 调用函数时, 实参与形参应该数量相同, 类型一致函数可以嵌套定义函数必须有返回值, 否则不能正确使用程序中有调用关系的所有函数必须放在同一个源程序文件中 C 程序由一个或一个以上的函数组成E 8. 以下对 C 语言函数的有关描述中, 正确的有 ( ) 在 C 程序中, 函数调用不能出现在表达式语句中在 C 语言中, 一个函数一般由两个部分组成, 它们是函数说明和函数体函数的实参和形参可以是相同的名字在 中定义的变量都可以在其它被调函数中直接使用外部类型的变量只能定义一次, 但可在不同地方声明多次CE 9. 一个数据类型为 void 的函数在被调用后, 下列错误的描述有 ( ) A 函数没有返回值 B 函数可以返回一个系统默认值 C 函数返回值由用户临时决定 D 函数可以返回一个不确定的值CD 10. 下列函数中, 能够输出字符数据的函数有 ( ) A puts( ) B printf( ) C scanf( ) D putchar( ) E put( ) BD 第 9 章 编译预处理 一 选择题 1 若有宏定义 #define PI = , 且在程序中有语句 s +PI; 其中宏名 PI 代替的是 :( ) A PI 的值 B C = D 宏定义错误, 编译通不过

42 2 设有以下宏定义:#define N 3 #define Y(n) ((N+1)*n) 执行语句 z=2*(n+y(5+1)); 后,z 的值为 :( ) A 出错 B 42 C 48 D 54 3 以下说法正确的是:( ) A #define 和 printf 都是 C 语句 B #define 是 C 语句, 而 printf 不是 C printf 是 C 语句, 但 #define 不是 D #define 和 printf 都不是 C 语句 4 编译预处理命令以 结尾 A ; B. C \ D 回车 5 用 C 语言编写的程序是一种 能运行的程序 A 只需要经过编译就 B 只需要经过连接就 C 需要经过编译和连接才 D 不需要作任何处理就 6 以下叙述中正确的是( ) A 用 #include 包含的头文件的后缀不可以是.a B 若一些源程序中包含某个头文件, 当该头文件有错时, 只需对该头文件进行修改, 包含此头文件的所有源程序不必重新进行编译 C 宏命令行可以看做是一行 C 语句 D C 编译中的预处理是在编译之前进行的 7 下面是对宏定义的描述, 不正确的是 ( ) A 宏不存在类型问题, 宏名无类型, 它的参数也无类型 B 宏替换不占用运行时间 C 宏替换时先求出实参表达式的值, 然后代入形参运算求值 D 其实, 宏替换只不过是字符替代而已 8 以下正确的描述为( ) A 每个 C 语言程序必须在开头使用预处理命令 #include <stdio.h> B 预处理命令必须位于 C 源程序的首部 C 在 C 语言中预处理命令都以 # 开头 D C 语言的预处理命令只能实现宏定义和条件编译的功能 9 下列选项中不会引起二义性的宏定义是( ) A #define POWER(x) x*x B #define POWER(x) (x)*(x) C #define POWER(x) (x*x) D #define POWER(x) ((x)*(x)) 10 以下程序的输出结果是( ) #define f(x) x*x #include <stdio.h>

43 int a=6,b=2,c; c=f(a)/f(b); printf( %d\n,c); A 9 B 6 C 36 D 以下程序运行后, 输出结果是 ( ) #define PT 5.5 #defme S(x) PT*x*x #include <stdio.h> int a=1,b=2; printf( %4.1f\n,S(a+b)); A 49.5 B 9.5 C 22.0 D 下列程序执行后的输出结果是( ) #define MA(x) x*(x-1) #include <stdio.h> int a=1,b=2; printf( %d\n,ma(1+a+b)); A 6 B 8 C 10 D 以下程序的输出结果为( ) #include <stdio.h> #define SQR(x) x*x int a,k=3; a=++sqr(k+1); printf( %d\n,a); A 6 B l0 C 8 D 9 14 对下面程序段, 正确的判断是 ( ) #define A 3 #define B(a) ((A+1)*a)... x=3*(a+b(7)); A 程序错误, 不许嵌套宏定义 B x=93 C x=21 D 程序错误, 宏定义不许有参数.

44 15 以下程序的输出结果为( ) #include <stdio.h> #define F(y) 3.84+y #define PRINT(a) PR(a);putchar( \n ) int x=2; PRINT(F(3)*x); A 8 B 9 C 10 D 11 二 判断题 1 ( F ) 预处理命令行必须以 # 开头, 且最后要用分号结尾 2 ( T ) 宏命令的处理占用编译时间, 而不占用运行时间 三 多选题 1 下面是对宏定义的描述, 正确的有 ( ) A 宏不存在类型问题, 宏名无类型, 它的参数也无类型 B 宏替换不占用运行时间 C 宏替换时先求出实参表达式的值, 然后代入形参运算求值 D 预处理命令行必须以 # 开头, 且最后要用分号结尾 E 宏命令的处理占用编译时间, 而不占用运行时间BE 2 以下叙述中不正确的是 ( ) A 用 #include 包含的头文件的后缀不可以是.a B 宏不存在类型问题, 宏名无类型, 它的参数也无类型 C 宏命令行可以看做是一行 C 语句 D C 编译中的预处理是在编译之前进行的 E 在 C 语言中预处理命令都以 # 开头C 第 10 章 指针 一 选择题 1 有以下程序 void fun(char *a, char *b) a=b; (*a)++; char c1='a',c2='a',*p1,*p2; p1=&c1; p2=&c2; fun(p1,p2); printf("%c%c\n",c1,c2); 程序运行后的输出结果是 :( ) A)Ab B)aa C)Aa D)Bb

45 2 下列选项中正确的语句组是 :( ) A)char s[8]; s="beijing"; C)char s[8]; s="beijing"; 3 已定义以下函数 fun(int *p) return *p; B)char *s; s="beijing"; D)char *s; s="beijing"; 该函数的返回值是 :( ) A) 不确定的值 B) 形参 p 中存放的值 C) 形参 p 所指存储单元中的值 D) 形参 p 的地址值 4 若有定义 :int *p[3];, 则以下叙述中正确的是 :( ) A) 定义了一个类型为 int 的指针变量 p, 该变量具有三个指针 B) 定义了一个指针数组 p, 该数组含有三个元素, 每个元素都是基类型为 int 的指针 C) 定义了一个名为 *p 的整型数组, 该数组含有三个 int 类型元素 D) 定义了一个可指向一维数组的指针变量 p, 所指一维数组应具有三个 int 类型元素 5 已定义以下函数 fun(char *p2, char *p1) while((*p2=*p1)!='\0') p1++;p2++; 函数的功能是 :( ) A) 将 p1 所指字符串复制到 p2 所指内存空间 B) 将 p1 所指字符串的地址赋给指针 p2 C) 对 p1 和 p2 两个指针所指字符串进行比较 D) 检查 p1 和 p2 两个指针所指字符串中是否有 '\0' 6 有以下程序 : int p[7]=11,13,14,15,16,17,18,i=0,k=0; while(i<7&&*(p+i)%2) k=k+*(p+i); i++; printf("%d\n",k); 执行后输出的结果是 :( ) A) 58 B) 56 C) 45 D) 24 7 若有如下定义 char a[10],*p=a, 则对 a 数组中元素的不正确的引用是 :( ) A)*&a[5] B)a+2 C)*(p+5) D)*(a+5) 8 有以下程序 int *f(int *x,int *y) if(*x<*y)

46 return x; else return y; int a=7,b=8,*p,*q,*r; p=&a; q=&b; r=f(p,q); printf("%d,%d,%d\n",*p,*q,*r); 执行后输出结果是 :( ) A) 7,8,8 B) 7,8,7 C) 8,7,7 D) 8,7,8 9 有以下程序 char *s[]="one","two","three",*p; p=s[1]; printf("%c,%s\n",*(p+1),s[0]); 执行后输出结果是 :( ) A) n,two B) t,one C) w,one D) o,two 10 有以下程序 int x[8]=8,7,6,5,0,0, *s; s=x+3; printf("%d\n",s[2]); 执行后输出结果是 :( ) A) 随机值 B) 0 C) 5 D) 6 11 以下函数的功能是 : 通过键盘输入数据, 为数组中的所有元素赋值 #define N 10 void arrin(int x[n]) int i=0; while(i<n) scanf("%d", ); 在下划线处应填入的是 :( ) A) x+i B) &x[i+1] C) x+(i++) D) &x[++i] 12 有以下程序 char *s="\n123\\"; printf("%d,%d\n",strlen(s),sizeof(s));

47 执行后输出结果是 :( ) A) 5,4 B) 5,6 C) 6,7 D) 7,8 13 阅读以下函数 fun(char *sl,char *s2) int i=0; while( sl[i]==s2[i] && s2[i]!='\0') i++; return( sl[i]=='\0' && s2[i]=='\0' ); 此函数的功能是 :( ) A) 将 s2 所指字符串赋给 s1 B) 比较 s1 和 s2 所指字符串的大小, 若 s1 比 s2 的大, 函数值为 1, 否则函数值为 0 C) 比较 s1 和 s2 所指字符串是否相等, 若相等, 函数值为 1, 否则函数值为 0 D) 比较 s1 和 s2 所指字符串的长度, 若 s1 比 s2 的长, 函数值为 1, 否则函数值为 0 14 有以下程序 char str[ ]="xyz",*ps=str; while(*ps) ps++; for(ps--;ps-str>=0;ps--) puts(ps); 执行后输出结果是 :( ) A) yz B) z C) z D) x xyz yz yz xy xyz xyz 15 有以下程序 void fun(int *a,int i,int j) int t; if (i<j) t=a[i];a[i]=a[j];a[j]=t; fun(a,++i,--j); int a[]=1,2,3,4,5,6,i; fun(a,0,5); for(i=0;i<6;i++) rintf("%d",a[i]); 执行后输出结果是 :( ) A) B) C) D) 下列程序的输出结果是 :( )

48 char a[10]=9,8,7,6,5,4,3,2,1,0,*p=a+5; printf("%d",*--p); A) 非法 B)a[4] 的地址 C)5 D)3 17 下列程序的运行结果是 :( ) void fun(int *a, int *b) int *k; k=a; a=b; b=k; int a=3, b=6, *x=&a, *y=&b; fun(x,y); printf("%d %d", a, b); A) 6 3 B) 3 6 C) 0 0 D) 编译出错 18 下面程序的输出结果是 :( ) int a[ ]=1,2,3,4,5,6,7,8,9,0,,*p; p=a; printf("%d\n",*p+9); A) 0 B) 1 C) 10 D) 9 19 以下程序的输出结果是 :( ) int i, x[3][3]=1,2,3,4,5,6,7,8,9; for(i=0;i<3;i++) printf("%d,",x[i][2-i]); A) 1,5,9 B) 1,4,7 C) 3,5,7 D)3,6,9 20 以下程序的输出结果是 :( ) int a[3][3]= 1,2,3,4,5,6,i,j,s=0; for(i=1;i<3;i++) for(j=0;j<=i;j++) s+=a[i][j]; printf("%d\n",s); A) 18 B) 19 C) 20 D)21

49 21 若有说明 :int i, j=2,*p=&i;, 则能完成 i=j 赋值功能的语句是 :( ) A) i = *p; B) *p = *&j; C) i = &j; D) i = **p; 22 以下定义语句中, 错误的是 :( ) A) int a[]=1,2; B) char *a[3]; C) char s[10]="test"; D) int n=5,a[n]; 23 以下程序的输出结果是 :( ) char cchar(char ch) if(ch>='a'&&ch<='z') ch=ch-'a'+'a'; return ch; char s[]="abc+abc=defdef",*p=s; while(*p) *p=cchar(*p); p++; printf("%s\n",s); A) abc+abc=defdef B) abc+abc=defdef C) abcaabcdefdef D) abcabcdefdef 24 以下程序段的输出结果是 :( ) char s[]="\\141\141abc\t"; printf ("%d\n",strlen(s)); A) 9 B) 12 C) 13 D) 以下程序调用 findmax 函数返回数组中的最大值 findmax(int *a,int n) int *p,*s; for(p=a,s=a; p-a<n; p++) if ( ) s=p; return(*s); int x[5]=12,21,13,6,18; printf("%d\n",findmax(x,5)); 在下划线处应填入的是 :( ) A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s

50 26 以下程序的输出结果是 :( ) char cf[3][5]="aaaa","bbb","cc"; printf("\"%s\"\n",ch[1]); A) "AAAA" B) "BBB" C) "BBBCC" D) "CC" 27 以下不能正确进行字符串赋初值的语句是 :( ) A) char str[5]="good!"; B) char str[]="good!"; C) char *str="good!"; D) char str[5]='g','o','o','d'; 28 以下程序的输出结果是 :( ) f(int *b, int m, int n) int i,s=0; for(i=m;i<n;i=i+2) s=s+*(b+i); return s; int x,a[]=1,2,3,4,5,6,7,8,9; x=f(a,3,7); printf("%d\n",x); A) 10 B)18 C) 8 D) 以下程序的输出结果是 :( ) #include <stdio.h> #include <string.h> char b1[8]="abcdefg",b2[8],*pb=b1+3; while (--pb>=b1) strcpy(b2,pb); printf("%d\n",strlen(b2)); A) 8 B) 3 C) 1 D) 7 30 若有说明 :int n=2,*p=&n,*q=p;, 则以下非法的赋值语句是 :( ) A) p=q; B) *p=*q; C) n=*q; D) p=n; 31 有以下程序 void fun(char *c,intd) *c=*c+1;d=d+1;

51 printf("%c,%c,",*c,d); char a='a',b='a'; fun(&b,a); printf("%c,%c\n",a,b); 程序运行后的输出结果是 :( ) A) B,a,B,a B) a,b,a,b C) A,b,A,b D) b,b,a,b 32 以下程序中函数 sort 的功能是对 a 所指数组中的数据进行由大到小的排序, void sort(int a[],int n) int i,j,t; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(a[i]<a[j]) t=a[i];a[i]=a[j];a[j]=t; int aa[10]=1,2,3,4,5,6,7,8,9,10,i; sort(&aa[3],5); for(i=0;i<10;i++) printf("%d,",aa[i]); printf("\n"); 程序运行后的输出结果是 :( ) A) 1,2,3,4,5,6,7,8,9,10, B) 10,9,8,7,6,5,4,3,2,1, C) 1,2,3,8,7,6,5,4,9,10, D) 1,2,10,9,8,7,6,5,4,3, 33 有以下程序 char a[]='a','b','c','d','e','f','g','h','\0'; int i,j; i=sizeof(a); j=strlen(a); printf("%d,%d\n",i,j); 程序运行后的输出结果是 :( ) A) 9,9 B) 8,9 C) 1,8 D) 9,8 34 以下程序中的函数 reverse 的功能是将 a 所指数组中的内容进行逆置 void reverse(int a[],int n) int i,t; for(i=0;i<n/2;i++) t=a[i];a[i]=a[n-1-i];a[n-1-i]=t; int b[10]=1,2,3,4,5,6,7,8,9,10; int i,s=0;

52 reverse(b,8); for(i=6;i<10;i++) s+=b[i]; printf("%d\n",s); 程序运行后的输出结果是 :( ) A) 22 B) 10 C) 34 D) 有以下程序 int aa[4][4]=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6; int i,s=0; for(i=0;i<4;i++) s+=aa[i][1]; printf("%d\n",s); 程序运行后的输出结果是 :( ) A) 11 B) 19 C) 13 D) 有以下程序 #include <string.h> char *p="abcde\0fghjik\0"; printf("%d\n",strlen(p)); 程序运行后的输出结果是 :( ) A) 12 B) 15 C) 6 D) 5 37 有以下程序 void ss(char *s,char t) while(*s) if(*s==t) *s=t-'a'+'a'; s++; char str1[100]="abcddfefdbd",c='d'; ss(str1, C); printf("%s\n",str1); 程序运行后的输出结果是 :( ) A) ABCDDEFEDBD B) abcddfefdbd C) abcaafefaba D) Abcddfefdbd 38. 变量的指针, 其含义是指该变量的. a) 值 b) 地址 c) 名 d) 一个标志

53 39. 若有语句 int *point,a=4; 和 point=&a; 下面均代表地址的一组选项是. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point,point 40. 若有说明 ;int *p,m=5,n; 以下正确的程序段的是. a)p=&n; b)p=&n; scanf("%d",&p); scanf("%d",*p); c)scanf("%d",&n); d)p=&n; *p=n; *p=m; 答案 : D 41. 下面程序段的运行结果是. char *s="abcde"; s+=2;printf("%d",s); a)cde b) 字符 'c' c) 字符 'c' 的地址 d) 无确定的输出结果 42. 设 p1 和 p2 是指向同一个字符串的指针变量,c 为字符变量, 则以下不能正确 执行的赋值语句是. a)c=*p1+*p2; b)p2=c c)p1=p2 d)c=*p1*(*p2); 43. 以下正确的程序段是. a)char str[20]; scanf("%s", str); c)char str[20]; scanf("%s",&str[2]); b)char *p; scanf("%s",p); d)char str[20],*p=str; scanf("%s",p[2]); 44. 若有说明语句 char a[]="it is mine"; char *p="it is mine"; 则以下不正确的叙述是. a)a+1 表示的是字符 t 的地址 b)p 指向另外的字符串时, 字符串的长度不受限制 c)p 变量中存放的地址值可以改变 d)a 中只能存放 10 个字符 45. 下面程序的运行结果是. #include <stdio.h> #include <string.h>

54 char *s1="abdeg"; char *s2="abdeg"; s1+=2;s2+=2; printf("%d\n",strcmp(s1,s2)); a) 正数 b) 负数 c) 零 d) 不确定的值 答案 : B 46. 下面程序的运行结果是. #include <stdio.h> #include <string.h> fun(char *w,int n) char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2)t=*s1++;*s1=*s2--;*s2=t; char *p; p=" "; fun(p,strlen(p)); puts(p); a) b) c) d) 若有以下定义, 则对 a 数组元素的正确引用是. int a[5],*p=a; a)*&a[5] b)a+2 c)*(p+5) d)*(a+2) 48. 若有定义 :int a[2][3], 则对 a 数组的第 i 行 j 列元素地址的正确引用为 a)*(a[i]+j) b)(a+i) c)*(a+j) d)a[i]+j 49. 若有以下定义, 则 p+5 表示. int a[10],*p=a; a) 元素 a[5] 的地址 b) 元素 a[5] 的值 c) 元素 a[6] 的地址 d) 元素 a[6] 的值 50. 以下程序的输出结果是. #include <stdio.h> void fun(int x); int int x = 3; fun(x);

55 printf( x = %d\n, x); void fun(int x) x = 5; A) 3 B) 5 C) 8 D) 以下程序的输出结果是. #include <stdio.h> void fun(int *p); int int x = 3; fun(&x); printf( x = %d\n, x); void fun(int *p) *p = 5; A) 3 B) 5 C) 8 D) 以下 count 函数的功能是统计 substr 在母串 str 中出现的次数 int count(char *str,char *substr) int i,j,k,num=0; for(i=0; 1 ;i++) for( 2,k=0;substr[k]==str[j];k++,j++) if(substr[ 3 ]== \0 ) num++;break; return num; 1 A) str[i]==substr[i] B) str[i]!= \0 C) str[i]== \0 D) str[i]>substr[i] 2 A) j=i+1 B) j=i C) j=i+10 D) j=1 3 A) k B) k++ C) k+1 D) ++k 53. 以下 Delblank 函数的功能是删除字符串 s 中的所有空格 ( 包括 Tab 回车符和换行符 ) void Delblank(char *s)

56 int i,t; char c[80]; for(i=0,t=0; 1 ;i++) if(!isspace( 2 ))c[t++]=s[i]; c[t]= \0 ; strcpy(s,c); 1 A) s[i] B)!s[i] C) s[i]= \0 D) s[i]== \0 2 A) s+i B) *c[i] C) *(s+i)= \0 D) *(s+i) 54. 以下 conj 函数的功能是将两个字符串 s 和 t 连接起来 char *conj(char *s,char *t) char *p=s; while(*s) 1 ; while(*t) *s= 2 ;s++;t++; *s= \0 ; 3 ; 1 A) s-- B) s++ C) s D) *s 2 A) *t B) t C) t-- D) *t++ 3 A) return s B) return t C) return p D) return p-t 55. 下列程序的输出结果是 #include <stdio.h> int **k,*a,b=100;a=&b; k=&a;printf( %d\n,**k); A) 运行出错 B) 100 C) a 的地址 D) b 的地址 56. 下列程序的输出结果是 #include <stdio.h> fun(int *a,int *b) int *w;*a=*a+*a;*w=*a; *a=*b; *b=*w; int x=9,y=5,*px=&x,*py=&y;fun(px,py);printf( %d, %d\n,x,y); A) 出错 B) 18, 5 C) 5, 9 D) 5, 若定义了以下函数 : void f( ) p=(double *)malloc(10*sizeof(double));

57 p 是该函数的形参, 要求通过 p 把动态分配存储单元的地址传回主调函数, 则形参 p 的正确定义应当 是 A) double *p B) float **p C) double **p D) float *p 二 判断题 1.(F) 指针变量里存放的是地址值, 因此指针变量只能是 int 型的 2.(T) 在 C 语言中, 所谓指针型数据, 即指该数据是一个地址 3.(T) 有一个一维数组 a[10], 那么 a 与 &a[0] 等价 4.(F) 如有说明 :int b[10], *p = b; 表明在使用时 b 与 p 就完全等价了 5.(T) 数组中的每一个元素相当于一个变量 若要让一个指针变量指向它, 必须用 & 数组元素 的方法 向该指针变量赋值 6.(F) 有如下程序段 :int i, j = 2, k, *p = &i;k = *p + j; 这里出现的两个 * 号, 含义是一样的 7.(F) 在 C 语言中, 每一个变量在内存里占用的单元数都是相同的 8.(T) 通过指针变量, 就能间接地得到它所指向的变量的内容 9.(T) 说明语句 :int *p, p1, p2; 只说明了一个能指向 int 型变量的指针 10.(F) 有说明 :int *p; 且 p 指向地址为 1500 的内存单元, 那么经过操作 p++; 后,p 将指向 1501 的 内存单元 11.(F) 数组元素可以是不同数据类型的 12.(F) 如果初值表中的初值个数少于数组长度, 那么 C 语言编译程序会自动把剩余的元素初始化为初值 表中的最后一个值 13. 主调函数把单个数组元素传递给修改该元素值的被调函数时, 主调函数就能够得到修改后的值 (F) 14.(T) 设 p 是指向数组 a 的指针变量, 则 a[i] 和 p[i] 等价 15.(T) 一个变量的指针就是该变量的地址 16.(F) 若定义 int **p; 则程序中调用 *p 时, 它代表的是 p 的地址 17.(F) 若指针占用的内存大小为 2Byte, 则指向它的二重指针占用内存大小为 4Byte. 18.(F) 带参 main 函数中的形参的值可以在程序中得到 19.(F)main(argc,argv) 中的参数 argv 的定义格式为 char argv[] 20.(F)int **p; 表示定义一个 *p 指针变量 21.(F) 在 C 语言中允许将一个整数赋给指针变量 22.(F) 一个指针变量加 1 表示将该指针变量的原值 ( 地址 ) 加 1 23.(F)int *p(); 表示定义一个指向函数的指针变量 p 24.(F) 当函数实参中使用指针变量时, 形参变量也必须使用指针变量 25.(F)*p++ 等价于 (*p)++ 26.(F) 使用指针技术, 可以通过修改形参变量的值达到修改实参变量的值的目的 27.(F) 因为用字符数组和字符指针变量都能实现字符串的存储和运算, 因此它们二者是完全等价的 28.(T) 对指向函数的指针变量, 像 p+n p++ p- - 等运算是无意义的 29.(T)main(int argc,char *argv[]) 中的参数 argc 表示命令行只参数的个数 30.(T) 在 int a[3][4]; 中 a+i 和 *(a+i) 的含义是不一样的 31.(F)char *p[10]; 定义了一个指向字符数组的指针变量 32.(F) 将指向函数的指针作为函数的参数, 虽然可以提高效率, 但是容易造成混乱, 所以不符合结构化程 序设计的原则 33.(F) 数组名实际上是此数组的首地址, 所以数组名相当于一个指针变量 34.(F) 若定义数组 a[2][3], 则 a+1 和 *(a+1) 完全等价 35.(T) 函数的形参为一个数组, 则调用此函数时将数组名作为对应的实参

58 一 单选题 1. 下列关于结构的说法错误的是 :( ) A: 结构是由用户自定义的一种数据类型 B: 结构中可设定若干个不同数据类型的成员 第 11 章结构与联合 C: 结构中成员的数据类型可以是另一个已定义的结构 D: 在定义结构时, 可以对成员进行初始化 2. 以下关于结构体的叙述中, 错误的是 :( ) A: 结构体是一种可由用户构造的数据类型 B: 结构体中的成员可以具有不同的数据类型 C: 结构体中的成员不可以与结构体变量同名 D: 结构体中的成员可以是数组 3. 以下结构体类型说明及结构体变量 a,b 的定义中, 正确的是 :( ) A:struct ss B:struct ss char flag; char flag; float x; float x; ; ; ss a,b; C:struct struct ss a,b; D:struct char flag; char flag; float x; float x; ss;; ss; ss a,b; struct ss a,b; 4. 设有以下说明语句 : struct stu int a; float b; stutype; 则下面的叙述不正确的是 :( ) A:struct 是结构体类型的关键字 B:struct stu 是用户定义的结构体类型名 C:stutype 是用户定义的结构体类型名 D:a 和 b 都是结构体成员名 5. 在 16 位 IBM-PC 机上使用 C 语言时, 若有如下定义 : struct data long i; char ch; double f; b; 则结构变量 b 占用内存的字节数是 :( )

59 A:4 B:8 C:12 D: 下面程序的运行结果是 :( ) main( ) struct cmplx int x; int y; c[2]=1,3,2,7; printf("%d",c[0].y/c[0].x*c[1].x); A:0 B:1 C:3 D:6 7. 若有以下说明和语句, 则对 pup 中 sex 域的正确引用方式是 :( ) struct pupil char name[20]; int sex; pup,*p; p=&pup; A:p.pup.sex B:p->pup.sex C:(*p).pup.sex D:(*p).sex 8. 当定义一个结构体变量时系统分配给它的内存是 :( ) A: 各成员所需内存量的总和 B: 成员中占内存量最大者所需的容量 C: 结构中第一个成员所需内存量 D: 结构中最后一个成员所需内存量 9. 若有以下说明和语句, 则下面表达式中值为 1002 的是 :( ) struct student int age; int num; ; struct student stu[3]= 1001,20,1002,19,1003,21 ; struct student *p; p=stu; A:(p++)->num B:(p++)->age C:(*p).num D:(*++p).age 10. 当说明一个共用体变量时, 系统分配给它的内存是 :( ) A: 各成员所需内存量的总和 B: 共用体中第一个成员所需内存量 C: 成员中占内存量最大者所需的内存量 D: 共用体中最后一个成员所需内存量 11. 以下对 C 语言中共用体类型数据的叙述正确的是 :( ) A: 可以对共用体变量名直接赋值 B: 一个共用体变量中可以同时存放所有成员

60 C: 一个共用体变量中不能同时存放其所有成员 D: 共用体类型定义中不能出现结构体类型的成员 12. 若有以下定义和语句 : union data int i; char c; float f; a; 则以下语句正确的是 :( ) A:a=5 B:printf("%d\n",a.i); C:a=2,'a',1.2; D:n=a 13. 下面程序运行后的输出结果应为 :( ) #include "stdio.h" main( ) union int a[2]; long b; char c[4]; s; s.a[0]=0x39; s.a[1]=0x38; printf("%c",s.c[0]); A;39 B:9 C:38 D:8 14. 根据以下定义, 能输出字母 M 的语句是 struct person char name[9];int age;; struct person class[10]= John,17, Paul,19, Mary,18, Adam,16,; A.printf( %c\n,class[3].name); B.printf( %c\n,class[3].name[1]); C.printf( %c\n,class[2].name[1]); D.printf( %c\n,class[2].name[0]); 15. 对整个结构能够进行的操作是 A) 对结构进行赋值 B) 对结构进行存取 C) 对结构进行减法运算 D) 对结构体做加法 16. 下列对结构类型的描述错误的是 A) 结构体变量可以有不同类型的成员

61 B) 结构体变量所占内存空间一定等于各个分量所占内存空间之和 C) 结构体变量既可以做函数参数, 又可以从函数中返回 D) 结构体变量的成员既可以读又可以写 第 12 章文 件 一 单选题 1. 利用 C 语言的文件操作, 可以把数据永久保存在 :( ) A. 磁盘 B. 内存 C. 屏幕 D. 键盘 2. 若有程序片段 FILE *fp; fp=fopen( a.txt, r ); 则以下说法中正确的是 :( ) A.fp 指向磁盘文件 a.txt 的地址 B.fp 指向磁盘文件 a.txt 所对应的 FILE 结构 C. 如果 fp 不为 NULL, 表示文件打开失败 D. 可以利用 fp 指针对文件 a.txt 进行写操作 3.fopen 函数的作用是 :( ) A. 将文件的内容读入内存 B. 读出文件的大小 C. 建立与文件关联的 FILE 结构体变量并返回该结构体变量的地址 D. 向文件写数据 9.fclose 函数的作用是 :( ) A. 删除文件 B. 删除文件中的数据 C. 释放与该文件相关联的 FILE 结构体变量 D. 清空文件缓冲区 4. 已知 fp 是一个指向已打开文件的指针,ch 是一个字符型变量, 则 ch=fgetc(fp) 的作用是 :( ) A. 获取键盘输入的字符, 并赋值给 ch B. 获取 fp 所指向的文件的第一个字节的内容, 并赋值给 ch C. 获取 fp 所指向的文件的当前文件位置指针所指向的一个字节的内容, 并赋值给 ch D. 将 ch 的值输出到 fp 所指向的文件中 5 以下可作为函数 fopen 中第一个参数的正确格式是 A)c:user\text.txt C) c:\user\text.txt B)c:\user\text.txt D) c:\\user\\text.txt 6 若执行 fopen 函数时发生错误, 则函数的返回值是 A) 地址值 B)0 C)1 D)EOF 7 若要用 fopen 函数打开一个新的二进制文件, 该文件要求既能读也能写, 则打开方式字符串应是 A) ab+ B) wb+ C) rb+ D) ab 8 若以 a+ 方式打开一个已存在的文件, 则以下叙述正确的是

技能竞赛C试题

技能竞赛C试题 C 语言程序设计单元测验四 ( 数组 ) 一 单项选择题 ( 每题 1 分, 共 60 分 ) 1 若有以下说明语句 : int a[12]={1,2,3,4,5,6,7,8,9,10,11,12; char c= a,d,g; 则数值为 4 的表达式是 :( ) A a[g-c] B a[4] C a[ d - c ] D a[ d -c] 2 假设 int 型变量占两个字节的存储单元, 若有定义

More information

技能竞赛C试题

技能竞赛C试题 C 语言程序设计单元测验六 ( 指针 ) 一 单项选择题 ( 每题 1 分, 共 54 分 ) 1 有以下程序 void fun(char *a, char *b) { a=b; (*a)++; { char c1='a',c2='a',*p1,*p2; p1=&c1; p2=&c2; fun(p1,p2); printf("%c%c\n",c1,c2); A Ab B aa C Aa D Bb 2

More information

网C试题(08上).doc

网C试题(08上).doc 学习中心 姓名 学号 西安电子科技大学网络与继续教育学院 高级语言程序设计 (C) 全真试题 ( 闭卷 90 分钟 ) 题号一二三总分 题分 60 20 20 得分 一 单项选择题 ( 每小题 3 分, 共 60 分 ) 1.C 语言程序的基本单位是 A) 程序行 B) 语句 C) 函数 D) 字符 2. 下列四组选项中, 均是不合法的用户标识符的选项是 A)A B)getc C)include D)while

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;,

More information

没有幻灯片标题

没有幻灯片标题 指针作为函数参数 : 原因 : 1 需要修改一个或多个值,( 用 return 语句不能解决问题 ) 2 执行效率的角度 使用方法 : 在函数原型以及函数首部中需要声明能够接受指针值的形参, 具体的写法为 : 数据类型 * 形参名 如果有多个指针型形参, 则用逗号分隔, 例如 : void swap(int *p1, int *p2) 它说明了形参 p1 p2 是指向整型变量的指针 在函数调用时,

More information

《C语言程序设计》第2版教材习题参考答案

《C语言程序设计》第2版教材习题参考答案 教材 C 语言程序设计 ( 第 2 版 ) 清华大学出版社, 黄保和, 江弋编著 2011 年 10 月第二版 ISBN:978-7-302-26972-4 售价 :35 元 答案版本 本习题答案为 2012 年 2 月修订版本 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p = &a A. *p = *a B. p = *a C.p = &a D. *p =

More information

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3 浙江大学 C 程序设计及实验 试题卷 2002-2003 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:30-10:30 注意 : 答题内容必须写在答题卷上, 写在本试题卷上无效 一. 单项选择题 ( 每题 1 分, 共 10 分 ) 1. 下列运算符中, 优先级最低的是 A.

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

期中考试试题讲解

期中考试试题讲解 一 选择题 ( 一 ) 1. 结构化程序设计所规定的三种基本结构是 C A 主程序 子程序 函数 B 树形 网形 环形 C 顺序 选择 循环 D 输入 处理 输出 2. 下列关于 C 语言的叙述错误的是 A A 对大小写不敏感 B 不同类型的变量可以在一个表达式中 C main 函数可以写在程序文件的任何位置 D 同一个运算符号在不同的场合可以有不同的含义 3. 以下合法的实型常数是 C A.E4

More information

2015年计算机二级(C语言)模拟试题及答案(三)

2015年计算机二级(C语言)模拟试题及答案(三) 2016 年计算机二级 (C 语言 ) 模拟试题及答案 (3) 1.( A ) 是构成 C 语言程序的基本单位 A 函数 B 过程 C 子程序 D 子例程 2.C 语言程序从 ( C ) 开始执行 A 程序中第一条可执行语句 B 程序中第一个函数 C 程序中的 main 函数 D 包含文件中的第一个函数 3 以下说法中正确的是( C ) A C 语言程序总是从第一个定义的函数开始执行 B 在 C 语言程序中,

More information

2015年计算机二级(C语言)模拟试题及答案(四)

2015年计算机二级(C语言)模拟试题及答案(四) 2015 年计算机二级 (C 语言 ) 模拟试题及答案 (4) 一 填空题 1 C 语言中基本的数据类型有 : 2 C 语言中普通整型变量的类型说明符为, 在内存中占 字节, 有符号普通整型的数据范围是 3 整数-35 在机内的补码表示为 4 执行下列语句 int a=8;a+=a-=a*a; 后,a 的值是 5 有如下语句:charA[ ]={ I am a student }; 该字符串的长度是,A[3]=

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

2008年4月全国计算机等级考试二级C语言真题(含答案)

2008年4月全国计算机等级考试二级C语言真题(含答案) 2008 年 4 月 全 国 计 算 机 等 级 考 试 二 级 C 语 言 真 题 ( 含 答 案 ) 一 选 择 题 ( 共 70 分 ) 下 列 各 题 A),B),C),D) 四 个 选 项 中, 只 有 一 个 选 项 是 正 确 的, 请 将 正 确 选 项 涂 写 在 答 题 卡 相 应 位 置 上, 答 在 试 卷 上 不 得 分 (1) 程 序 流 程 图 中 指 有 箭 头 的

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

2015年计算机二级(C语言)模拟试题及答案(四)

2015年计算机二级(C语言)模拟试题及答案(四) 2016 年 计 算 机 二 级 (C 语 言 ) 模 拟 试 题 及 答 案 (4) 一 填 空 题 1 C 语 言 中 基 本 的 数 据 类 型 有 : 2 C 语 言 中 普 通 整 型 变 量 的 类 型 说 明 符 为, 在 内 存 中 占 字 节, 有 符 号 普 通 整 型 的 数 据 范 围 是 3 整 数 -35 在 机 内 的 补 码 表 示 为 4 执 行 下 列 语 句 int

More information

新版 明解C言語入門編

新版 明解C言語入門編 328, 4, 110, 189, 103, 11... 318. 274 6 ; 10 ; 5? 48 & & 228! 61!= 42 ^= 66 _ 82 /= 66 /* 3 / 19 ~ 164 OR 53 OR 164 = 66 ( ) 115 ( ) 31 ^ OR 164 [] 89, 241 [] 324 + + 4, 19, 241 + + 22 ++ 67 ++ 73 += 66

More information

C/C++ - 文件IO

C/C++ - 文件IO C/C++ IO Table of contents 1. 2. 3. 4. 1 C ASCII ASCII ASCII 2 10000 00100111 00010000 31H, 30H, 30H, 30H, 30H 1, 0, 0, 0, 0 ASCII 3 4 5 UNIX ANSI C 5 FILE FILE 6 stdio.h typedef struct { int level ;

More information

1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7

1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7 1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7-80097 - 564-9 /TP 8 : 10. 00 ,,,, 1994 NCRE,,, ( ),,,,,

More information

新・解きながら学ぶC言語

新・解きながら学ぶC言語 330!... 67!=... 42 "... 215 " "... 6, 77, 222 #define... 114, 194 #include... 145 %... 21 %... 21 %%... 21 %f... 26 %ld... 162 %lf... 26 %lu... 162 %o... 180 %p... 248 %s... 223, 224 %u... 162 %x... 180

More information

全国计算机等级考试笔试模拟试卷(1)

全国计算机等级考试笔试模拟试卷(1) 2009 年 9 月全国计算机等级考试笔试试卷 二级公共基础知识和 C 语言程序设计 ( 考试时间 90 分钟, 满分 100 分 ) 一 选择题 ((1)~(10) (21)~(40) 每题 2 分,(11)~(20) 每题 1 分,70 分 ) (1) 下列数据结构中, 属于非线性结构的是 ( ) A) 循环队列 B) 带链队列 C) 二叉树 D) 带链栈 (2) 下列数据结构中, 能够按照 先进后出

More information

<4D F736F F D C4EA39D4C23137C8D5B6FEBCB643D3EFD1D4B1CACAD4CAD4BEEDBCB0B4F0B0B85FB1EAD7BCB0E65F2E646F63>

<4D F736F F D C4EA39D4C23137C8D5B6FEBCB643D3EFD1D4B1CACAD4CAD4BEEDBCB0B4F0B0B85FB1EAD7BCB0E65F2E646F63> 2011 年 9 月 17 日全国计算机等级考试 C 语言笔试题 一 选择题 (⑴-(10) (21)-(40) 每题 2 分,(11)-(20) 每题 1 分, 共 70 分 ) 下列各题 A) B) C) D) 四个选项中, 只有一个选项是正确的, 请将正确选项填涂在答题卡相应位置上, 答在试卷上不得分 (1) 下列叙述中正确的是 A) 算法就是程序 B) 设计算法时只需考虑数据结构的设计 C)

More information

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式] Arrays and Strings 存储同类型的多个元素 Store multi elements of the same type 数组 (array) 存储固定数目的同类型元素 如整型数组存储的是一组整数, 字符数组存储的是一组字符 数组的大小称为数组的尺度 (dimension). 定义格式 : type arrayname[dimension]; 如声明 4 个元素的整型数组 :intarr[4];

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 选择题 1. 以下数组定义中, 错误的是 :C)int a[3]=1,2,3,4; 2. 以下数组定义中, 正确的是 :B) int a[][2]=1,2,3,4; 3. 设有定义 int a[8][10];,

More information

nooog

nooog C : : : , C C,,, C, C,, C ( ), ( ) C,,, ;,, ; C,,, ;, ;, ;, ;,,,, ;,,, ; : 1 9, 2 3, 4, 5, 6 10 11, 7 8, 12 13,,,,, 2008 1 1 (1 ) 1.1 (1 ) 1.1.1 ( ) 1.1.2 ( ) 1.1.3 ( ) 1.1.4 ( ) 1.1.5 ( ) 1.2 ( ) 1.2.1

More information

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ 考生注意 : 本试卷共七大题, 满分 150 分 考试时间为 3 小时 ; 所有答案均写在答题纸上 ( 注明题号 ), 在此答题一律无效无效 一 选择题 ( 本题共 20 小题, 每小题 2 分, 满分 40 分 ) 1 char ch 1 2 A 0

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

Microsoft Word - 综合试题2.doc

Microsoft Word - 综合试题2.doc 综合测试题二 一 选择题 ( 本大题共 10 小题, 每小题 1 分, 共 10 分 ) 1. C 语言中用于结构化程序设计的三种基本结构是 A. 顺序结构 选择结构 循环结构 B. if switch break C. for while do-while D. if for continue 2. 下列关于 C 语言用户标识符的叙述中正确的是 A. 用户标识符中可以出现下划线和中划线 B. 用户标识符中不可以出现中划线,

More information

试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期 " 开放本科 " 期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new

试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期  开放本科  期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new 试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期 " 开放本科 " 期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. long 2. 在每个 C 十 + 程序中都必须包含有这样一个函数, 该函数的函数名为 ) A.main

More information

Microsoft Word - 2008年9月二级C真卷.doc

Microsoft Word - 2008年9月二级C真卷.doc 机 密 启 用 前 2008 年 9 月 全 国 计 算 机 等 级 考 试 二 级 笔 试 试 卷 C 语 言 程 序 设 计 24 注 意 事 项 一 考 生 应 严 格 遵 守 考 场 规 则, 得 到 监 考 人 员 指 令 后 方 可 作 答 二 考 生 拿 到 试 卷 后 应 首 先 将 自 己 的 姓 名 准 考 证 号 等 内 容 涂 写 在 答 题 卡 的 相 应 位 置 上 三

More information

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式] 指针 Pointers 变量指针与指针变量 Pointer of a variable 变量与内存 (Variables and Memory) 当你声明一个变量时, 计算机将给该变量一个内存, 可以存储变量的值 当你使用变量时, 计算机将做两步操作 : - 根据变量名查找其对应的地址 ; - 通过地址对该地址的变量内容进行读 (retrieve) 或写 (set) 变量的地址称为变量的指针! C++

More information

《计算概论》课程 第十九讲 C 程序设计语言应用

《计算概论》课程 第十九讲  C 程序设计语言应用 计算概论 A 程序设计部分 字符数组与字符串 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn 字符数组的定义 #include int main() char a[10] = 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ; for (int i = 0; i < 10; i++) cout

More information

( ) Wuhan University

( ) Wuhan University Email: huangzh@whueducn, 47 Wuhan Univesity i L A TEX,, : http://affwhueducn/huangzh/ 8 4 49 7 ii : : 4 ; 8 a b c ; a b c 4 4 8 a b c b c a ; c a b x y x + y y x + y x x + y x y 4 + + 8 8 4 4 + 8 + 6 4

More information

C语言程序设计复习题

C语言程序设计复习题 C 语言程序设计 ( 本 ) 复习题 一 选择题 1. 以下语句或语句组中, 能正确进行字符串赋值的是 A)char *sp;*sp="right!"; C)char s[10];*s="right!"; 2. 以下选项中合法的字符常量是 B)char s[10];s="right!"; D)char *sp="right!" A) "B" B) '\010' C) 68 D) D 3. 结构化程序由三种基本结构组成,

More information

试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期 " 开放本科 " 期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. l

试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期  开放本科  期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. l 试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期 " 开放本科 " 期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. long 2. 在每个 c++ 程序中都必须包含有这样一个函数, 该函数的函数名为 ( ) A. main

More information

<4D F736F F D C4EA33D4C2C8ABB9FABCC6CBE3BBFAB5C8BCB6BFBCCAD4B6FEBCB6B1CACAD4CAD4BEEDBCB0B2CEBFBCB4F0B0B82E646F63>

<4D F736F F D C4EA33D4C2C8ABB9FABCC6CBE3BBFAB5C8BCB6BFBCCAD4B6FEBCB6B1CACAD4CAD4BEEDBCB0B2CEBFBCB4F0B0B82E646F63> 2012 年 3 月全国计算机等级考试二级笔试试卷及参考答案 C 语言程序设计 ( 考试时间 90 分钟, 满分 100 分 ) 一 选择题 ((1)-(10) (21)-(40) 每题 2 分,(11)-(20) 每题 1 分, 共 70 分 ) 下列各题 A) B) C) D) 四个选项中, 只有一个选项是正确的 请将正确选项填涂在答题卡相应位置上答在试卷上不得分 1. 下列叙述中正确的是 A)

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

Microsoft PowerPoint - 01_Introduction.ppt

Microsoft PowerPoint - 01_Introduction.ppt Hello, World C 程序设计语言 第 1 章章观其大略 孙志岗 sun@hit.edu.cn http://sunner.cn prf("hello,, world\n"); 超级无敌考考你 : 如何把 hello 和 world 分别打印在两行? 2004-12-19 A Tutorial Introduction 2 hello.c 打印华氏温度与摄氏温度对照表 计算公式 : C=(5/9)(

More information

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc C 语言开发入门 课程教学大纲 ( 课程英文名称 ) 课程编号 :201409210011 学分 :5 学分学时 :60 学时 ( 其中 : 讲课学时 :37 学时上机学时 :23 学时 ) 先修课程 : 计算机导论后续课程 :C++ 程序设计适用专业 : 信息及其计算机相关专业开课部门 : 计算机系 一 课程的性质与目标 C 语言开发入门 是计算机各专业必修的基础课程, 是数据结构 C++ Java

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 177 [P179] (1) - [P181] [P182] (2) - for [P183] (3) - switch [P184] [P187] [P189] [P194] 178 [ ]; : : int var; : int var[3]; var 2293620 var[0] var[1] 2293620

More information

数 学 高 分 的 展 望 一 管 理 类 联 考 分 析 第 一 篇 大 纲 解 析 篇 编 写 : 孙 华 明 1 综 合 能 力 考 试 时 间 :014 年 1 月 4 日 上 午 8:30~11:30 分 值 分 配 : 数 学 :75 分 逻 辑 :60 分 作 文 :65 分 ; 总

数 学 高 分 的 展 望 一 管 理 类 联 考 分 析 第 一 篇 大 纲 解 析 篇 编 写 : 孙 华 明 1 综 合 能 力 考 试 时 间 :014 年 1 月 4 日 上 午 8:30~11:30 分 值 分 配 : 数 学 :75 分 逻 辑 :60 分 作 文 :65 分 ; 总 目 录 数 学 高 分 的 展 望... 1 第 一 篇 大 纲 解 析 篇... 1 一 管 理 类 联 考 分 析... 1 二 最 新 大 纲 解 析... 1 三 考 前 复 习 资 料 及 方 法... 第 二 篇 总 结 篇... 4 1 应 用 题 考 点 总 结 与 技 巧 归 纳... 4 代 数 模 块 题 型 归 纳 及 考 点 总 结... 9 3 数 列 模 块 题 型 归

More information

:,,,, ( CIP ) /,. :, ISBN CIP ( 2001) : : 127, : : : ht t p: / / www. nwpup. com : :

:,,,, ( CIP ) /,. :, ISBN CIP ( 2001) : : 127, : : : ht t p: / / www. nwpup. com : : :,,,, ( CIP ) /,. :, 2001. 8 ISBN 7 5612 1363 8............. 0342 CIP ( 2001) 027392 : : 127, : 710072 : 029-8493844 : ht t p: / / www. nwpup. com : : 787mm1 092mm : 19. 75 : 480 : 2001 8 1 2001 8 1 :

More information

untitled

untitled 1-1 1-2 1-3 1-4 1-5 1-6 1-7 1-8 1-1-1 C int main(void){ int x,y,z; int sum=0; double avg=0.0; scanf("%d",&x) ; scanf("%d",&y) ; scanf("%d",&z) ; sum=x+y+z ; avg=sum/3.0; printf("%f\n",avg); system("pause");

More information

<4D F736F F D205A572D2D A1AAA1AAD4ACE7F42D43D3EFD1D4CAB5D1B5BDCCB3CC2E646F6378>

<4D F736F F D205A572D2D A1AAA1AAD4ACE7F42D43D3EFD1D4CAB5D1B5BDCCB3CC2E646F6378> 第 1 部分 Visual Studio 6.0 开发环境介绍 本书以 Visual C++ 6.0 作为 C 源程序的实践开发环境, 本章将首先介绍 Visual C++ 6.0 环境的基本操作, 包括 Visual C++ 6.0 的安装和启动,C 源程序的编辑 运行与调试 1.1 安装与启动 Visual C++ 6.0 MSDN Visual C++ 6.0 1.1 Microsoft Visual

More information

Microsoft PowerPoint - 3. 函数Functionl.ppt [兼容模式]

Microsoft PowerPoint - 3. 函数Functionl.ppt [兼容模式] 函数 Function 如何重用代码 How to reuse code 3 4 = 3*3*3*3 3 4,6 5 : 拷贝 - 粘帖代码 (Copy-paste code) 3 4,6 5,12 10 : 拷贝 - 粘帖代码 (Copy-paste code) Bad! 使用函数 (with a function) 使用函数 (with a function) 使用函数 (with a function)

More information

<4D F736F F D20D7DBBACFCAD4CCE231B2CEBFBCB4F0B0B82E646F63>

<4D F736F F D20D7DBBACFCAD4CCE231B2CEBFBCB4F0B0B82E646F63> 综合测试题一参考答案 一 填空题 ( 表达式求值 )( 本大题共 10 小题, 每小题 1 分, 共 10 分 ) 设各语句的初始化 相同 :int x=3,y=2,z=1; 1. x=y==z x= 0 2. x=!(z>y)&&!x 1 x= 1 3. x=(y++*1/3) x= 0 4. x=((x>y>z)?1:0) x= 0 5. x*=2+3 x= 15 6. x=(++z*y,y++,z%y)

More information

1 2 / 3 1 A (2-1) (2-2) A4 6 A4 7 A4 8 A4 9 A ( () 4 A4, A4 7 ) 1 (2-1) (2-2) ()

1 2 / 3 1 A (2-1) (2-2) A4 6 A4 7 A4 8 A4 9 A ( () 4 A4, A4 7 ) 1 (2-1) (2-2) () (39mm E-Mail ( )( ), : : 1 1 ( ) 2 2 ( ) 29mm) WSK ( 1 2 / 3 1 A4 2 1 3 (2-1) 2-1 4 (2-2) 2-2 5 A4 6 A4 7 A4 8 A4 9 A4 10 11 ( () 4 A4, 5 6 7 8 A4 7 ) 1 (2-1) (2-2) () 1 2 (2-1) 3 (2-2) 4 5 6 7 (8 ) 9

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 思考题 1 函数总需要从 main 中调用吗? 当调用一个函数时, 为什么要使用参数? 函数不是总需要从 main 函数中调用, 使用参数的目的是为了给被调函数传递数据 2 什么是函数的返回值? 是否每个函数都有返回值?

More information

2001年(下)局域网技术与组网工程试卷答案

2001年(下)局域网技术与组网工程试卷答案 二 一年上半年全国高等教育自学考试计算机基础与程序设计试卷 一 单项选择题 ( 本大题共 20 小题, 每小题 1 分, 共 20 分 ) 在每小题列出的四个选项中只有一个选项是符合题目要求的, 请将正确选项前的字母填在题后的括号内 1.I/O 设备指的是计算机的 ( ) A 存储设备 B 输入和输出设备 C 控制器 D 运算器 2. 具有只读功能的内存储器是指 ( ) A ROM B RAM C

More information

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢   学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 Email: 51141201063@ecnu.cn 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Java 类型 引用 不可变类型 对象存储位置 作用域 OOP

More information

( CIP).:,3.7 ISBN TB CIP (3) ( ) ISBN O78 : 3.

( CIP).:,3.7 ISBN TB CIP (3) ( ) ISBN O78 : 3. ( CIP).:,3.7 ISBN 7 568 383 3.......... TB CIP (3) 334 3 37 ( ) 64536 www.hdlgpress.com.c 7879 6 9.75 479 3 7 3 7 45 ISBN 7 568 383 3O78 : 3. 995,.,.,.,. :,,,,.. :,,,,,,.,,,,.,,. ,,.,,,.,,,.,,,,.,.,,,

More information

4 / ( / / 5 / / ( / 6 ( / / 7 1 2 / 3 ( 4 ( 2003 8 ( 2

4 / ( / / 5 / / ( / 6 ( / / 7 1 2 / 3 ( 4 ( 2003 8 ( 2 : / ( 6 (2003 8 : ( 1 ( ( / / (,, ( ( - ( - (39mm 29mm 2 ( 1 2 3-6 3 6-24 6-48 12-24 8-12 WSK / WSK WSK 1 4 / ( / / 5 / / ( / 6 ( / / 7 1 2 / 3 ( 4 ( 2003 8 ( 2 9 5 ( 10 3 11 / (600 4 5 AA 710 AB 720 730

More information

Ps22Pdf

Ps22Pdf ( 0178) ( CIP). 1 /. :, 2004. 7 ISBN 7-80153 - 956-7.... G726. 9 CIP ( 2004) 069175 : 1 : : : : : : 2 : 100733 : 010-65369524 65369530 : : : 880mm 1230mm 1 /32 : 2400 : 150 : 5000 : 2006 8 1 2 : ISBN 7-80153

More information

该图是 A.N-S 图 B.PAD 图 C. 程序流程图 D. E-R 图 (8) 数据库管理系统是 A. 操作系统的一部分 B. 在操作系统支持下的系统软件 C. 一种编译系统 D. 一种操作系统 (9) 在 E-R 图中, 用来表示实体联系的图形是 A. 椭圆图 B. 矩形 C. 菱形 D. 三

该图是 A.N-S 图 B.PAD 图 C. 程序流程图 D. E-R 图 (8) 数据库管理系统是 A. 操作系统的一部分 B. 在操作系统支持下的系统软件 C. 一种编译系统 D. 一种操作系统 (9) 在 E-R 图中, 用来表示实体联系的图形是 A. 椭圆图 B. 矩形 C. 菱形 D. 三 2009 年 9 月全国计算机等级考试二级 C 语言程序设计试题及 答案 ( 考试时间 90 分钟, 满分 100 分 ) 一 选择题 ((1) (10) (21) (40) 每题 2 分,(11) (20) 每题 1 分, 共 70 分 ) (1) 下列数据结构中, 属于非线性结构的是 A. 循环队列 B. 带链队列 C. 二叉树 D. 带链栈 (2) 下列数据结果中, 能够按照 先进后出 原则存取数据的是

More information

移动平台应用软件开发 C/C++/JAVA 基础 C 中的预处理指令 主讲 : 张齐勋 移动平台应用软件开发 课程建设小组北京大学二零一五年

移动平台应用软件开发 C/C++/JAVA 基础 C 中的预处理指令 主讲 : 张齐勋 移动平台应用软件开发 课程建设小组北京大学二零一五年 移动平台应用软件开发 C/C++/JAVA 基础 C 中的预处理指令 主讲 : 张齐勋 zhangqx@ss.pku.edu.cn 移动平台应用软件开发 课程建设小组北京大学二零一五年 预处理 2 预处理器 C 语言的编译系统分为编译预处理和正式编译 预处理作用 : 对源程序编译之前做一些处理, 生成扩展 C 源程序 预处理器的行为是由预处理指令控制的 宏定义 文件包含 条件编译 #define #ifdef

More information

C/C++ - 函数

C/C++ - 函数 C/C++ Table of contents 1. 2. 3. & 4. 5. 1 2 3 # include # define SIZE 50 int main ( void ) { float list [ SIZE ]; readlist (list, SIZE ); sort (list, SIZE ); average (list, SIZE ); bargragh

More information

C

C C 2017 3 14 1. 2. 3. 4. 2/95 C 1. 3/95 C I 1 // talkback.c: 2 #include 3 #include 4 #define DENSITY 62.4 5 int main(void) 6 { 7 float weight, volume; 8 int size; 9 unsigned long letters;

More information

Chapter12 Derived Classes

Chapter12   Derived Classes 继 承 -- 派 生 类 复 习 1. 有 下 面 类 的 说 明, 有 错 误 的 语 句 是 : class X { A) const int a; B) X(); C) X(int val) {a=2 D) ~X(); 答 案 :C 不 正 确, 应 改 成 X(int val) : a(2) { 2. 下 列 静 态 数 据 成 员 的 特 性 中, 错 误 的 是 A) 说 明 静 态 数

More information

Ps22Pdf

Ps22Pdf ( 0410) ( CIP). /. :, 2004. 7 ISBN 7-80153 - 963 - X.... G726. 9 CIP ( 2004) 069169 : : : : : : : ( 2 : 100733, : 010-65369529, 65369527) : : : 880mm 1230mm 1 /32 : 3360 : 140 : 0001 5000 : 2005 8 1 1

More information

试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期 " 开放本科 " 期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默

试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期  开放本科  期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默 试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期 " 开放本科 " 期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默认扩展名为 ( ) A. cpp B. c C. exe D. obj 2. 设 x 和 y 均为逻辑值,

More information

2008级考试试题A

2008级考试试题A 四川大学期末考试试题 (A 卷 ) (2014 2015 学年第一学期 ) 课程号 :303066030 课序号 : 课程名称 : 计算机基础及 C 程序设计语言 任课教师 : 余勤刘亚梅邓丽华任瑞玲王茂宁曾晓东王忠罗伟刘洋成绩 : 适用专业年级 :2014 级 学生人数 : 印题份数 : 学号 : 姓名 : 考试须知 四川大学学生参加由学校组织或由学校承办的各级各类考试, 必须严格执行 四川大学考试工作

More information

幻灯片 1

幻灯片 1 1. 有如下说明 :int a[10]={1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是 *(p+8) A. 对 B. 错 2. C 语言表达式 a>=10 a

More information

山东2014第四季新教材《会计基础》冲刺卷第二套

山东2014第四季新教材《会计基础》冲刺卷第二套 2016 年 会 计 从 业 考 试 会 计 基 础 冲 刺 卷 2 一 单 项 选 择 题 ( 本 题 共 20 小 题, 每 小 题 1 分, 共 20 分 在 下 列 每 小 题 的 备 选 项 中, 有 且 只 有 一 个 选 项 是 最 符 合 题 目 要 求 的, 请 将 正 确 答 案 前 的 英 文 字 母 填 入 题 后 的 括 号 内, 不 选 错 选 均 不 得 分 ) 1.

More information

第三篇 C 语言基础编程能力实训案例 编程练习题答案 1-1 程序例 #include<stdio.h> main( ) { printf("c Language Program\n"); } 结果 1. 变量及数据运算 1-2 程序例 #include<stdio.h> main( ) { pri

第三篇 C 语言基础编程能力实训案例 编程练习题答案 1-1 程序例 #include<stdio.h> main( ) { printf(c Language Program\n); } 结果 1. 变量及数据运算 1-2 程序例 #include<stdio.h> main( ) { pri 第三篇 C 语言基础编程能力实训案例 编程练习题答案 1-1 程序例 printf("c Language Program\n"); 1. 变量及数据运算 1-2 程序例 printf("mini-floppy disk\n"); printf("floppy disk\n"); printf("hard disk\n"); 1-3 程序例 /*printf test*/ printf("c Language\n");

More information

. (A) (B) (C) A (D) (E). (A)(B)(C)(D)(E) A

. (A) (B) (C) A (D) (E). (A)(B)(C)(D)(E) A . () () () () () (A) (B) (C) B (D) (E). (A) (B) (C) E (D) (E) (A) (B) (C) (D). () () () () E (A) (B) (C) (D) (E). C (A) (B) (C) (D) (E). (A) (B) (C) (D) D (E). () - () - () - () - () - D (A) (B) (C) (D)

More information

Ps22Pdf

Ps22Pdf ( 98 ) C ( ) ( )158 1998 C : C C C,,, C,, : C ( ) : : (, 100084) : : : 7871092 1/ 16 :18 25 :415 : 2000 3 1 2000 3 1 : ISBN 7 302 01166 4/ T P432 : 00016000 : 22 00 ( 98 ) 20 90,,, ;,,, 1994, 1998, 160,

More information

untitled

untitled 串 串 例 : char ch= a ; char str[]= Hello ; 串 列 ch=getchar(); scanf( %c,&ch); 串 gets(str) scanf( %s,str); 8-1 數 ASCII 例 : char ch= A ; printf( %d,ch); // 65 A ascii =0x41 printf( %c,ch); // A 例 : char ch;

More information

C/C++程序设计 - 字符串与格式化输入/输出

C/C++程序设计 - 字符串与格式化输入/输出 C/C++ / Table of contents 1. 2. 3. 4. 1 i # include # include // density of human body : 1. 04 e3 kg / m ^3 # define DENSITY 1. 04 e3 int main ( void ) { float weight, volume ; int

More information

untitled

untitled A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (

More information

Microsoft PowerPoint - C语言课件-9-结构体.pptx

Microsoft PowerPoint - C语言课件-9-结构体.pptx 第九章结构体 郎大鹏 第九章结构体 9.1 结构体类型的声明方法 9.2 结构体类型变量的定义与使用 9.3 结构体数组 9.4 编程举例 9.5 习题 9.1 结构体类型的声明方法 结构体声明的语法形式如下 : struct 结构体标识符 成员变量列表 ; }; 例如, 为了描述班级 ( 假设仅仅包括班级编号 专业 人数等信息 ), 可以声明如下的结构体类型 struct Class char Code[10];

More information

zt

zt 1 X X ( 1 ) ( ) ( 5 ) (10) (11) (12) (1) (14) X (17) (20) (21) (26) (29) (2) (5) (8) (40) (42) (44) (48) 2 X (50) (54) (55) () (57) () (59) () (60) (62) X (65) (67) (69) (70) (7) (76) () (79) () (80) (81)

More information

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p NOWOER.OM /++ 程师能 评估. 单项选择题 1. 下 描述正确的是 int *p1 = new int[10]; int *p2 = new int[10](); p1 和 p2 申请的空间 的值都是随机值 p1 和 p2 申请的空间 的值都已经初始化 p1 申请的空间 的值是随机值,p2 申请的空间 的值已经初始化 p1 申请的空间 的值已经初始化,p2 申请的空间 的值是随机值 2.

More information

<4D6963726F736F667420576F7264202D2032303135C4EAC8EBD1A74D4241C1AABFBCD7DBBACFB2CEBFBCB4F0B0B8BCB0CFEABDE22E646F6378>

<4D6963726F736F667420576F7264202D2032303135C4EAC8EBD1A74D4241C1AABFBCD7DBBACFB2CEBFBCB4F0B0B8BCB0CFEABDE22E646F6378> 05 年 入 学 MBA 联 考 综 合 试 卷 参 考 答 案 及 详 解 说 明 : 由 于 05 年 入 学 MBA 联 考 试 题 为 一 题 多 卷, 因 此 现 场 试 卷 中 的 选 择 题 顺 序 及 每 道 题 的 选 项 顺 序, 不 同 考 生 有 所 不 同 请 在 核 对 答 案 时 注 意 题 目 和 选 项 的 具 体 内 容 所 有 解 析 来 自 网 络, 仅 供

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit 6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C51 6.1 C51 6.1.1 C51 C51 ANSI C MCS-51 C51 ANSI C C51 6.1 6.1 C51 bit Byte bit sbit 1 0 1 unsigned char 8 1 0 255 Signed char 8 11 128

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 第 1 章程序设计和 C 语言 1.1 什么是计算机程序 1.2 什么是计算机语言 1.3 C 语言的发展及其特点 1.4 最简单的 C 语言程序 1.5 运行 C 程序的步骤与方法 1.6 程序设计的任务 1.1 什么是计算机程序 程序 : 一组计算机能识别和执行的指令 只要让计算机执行这个程序, 计算机就会自动地 有条不紊地进行工作 计算机的一切操作都是由程序控制的, 离开程序, 计算机将一事无成

More information

E. (A) (B) (C) (D). () () () (A) (B) (C) (D) (E). () () () (A) (B) (C) (D) (E). (A)(B)(C) (D) (E) (A) (B) (C) (D) (E) (A) (B)(C) (D) (E). (A) (B) (C)

E. (A) (B) (C) (D). () () () (A) (B) (C) (D) (E). () () () (A) (B) (C) (D) (E). (A)(B)(C) (D) (E) (A) (B) (C) (D) (E) (A) (B)(C) (D) (E). (A) (B) (C) . (A) (B) (C) (D) (A) (B) (C)(D)(E). (A) (B) (C) (D) (E) (A) (B) (C) (D). (A) (B) (C) (D) (E) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E) (A) (B) (C) (D) (E). (A)

More information

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023) ( CIP) /. :, 2005. 2 ( ) ISBN 7-5624-3339-9.......... TP311. 1 CIP ( 2005) 011794 : : : : * : : 174 ( A ) :400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / /www. cqup. com. cn : fxk@cqup.

More information

untitled

untitled 不 料 料 例 : ( 料 ) 串 度 8 年 數 串 度 4 串 度 數 數 9- ( ) 利 數 struct { ; ; 數 struct 數 ; 9-2 數 利 數 C struct 數 ; C++ 數 ; struct 省略 9-3 例 ( 料 例 ) struct people{ char name[]; int age; char address[4]; char phone[]; int

More information

2007Ä꺼ÖÝʦ·¶´óѧ427¼ÆËã»ú»ù´¡¿¼ÑÐÊÔÌâ

2007Ä꺼ÖÝʦ·¶´óѧ427¼ÆËã»ú»ù´¡¿¼ÑÐÊÔÌâ 杭州师范学院 2007 年招收攻读硕士研究生入学考试题 考试科目代码 : 427 考试科目名称 : 1!"#$ %&' 计算机基础 2 ()*+,-./0' 3 12345 678934:;?@AB CDE 一 选择题 ( 每小题 2 分, 共 20 分 ) (1) 若变量已正确定义并赋值, 下面符合 C 语言语法的表达式是 A) a:=b+1 B) a=b=c+2; C) int 18.5%3

More information

Ps22Pdf

Ps22Pdf ) ,,, :,,,,,,, ( CIP) /. :, 2001. 9 ISBN 7-5624-2368-7.......... TU311 CIP ( 2001) 061075 ( ) : : : : * : : 174 ( A ) : 400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / / www. cqup.

More information

( CIP ) /. 2 ( ). :, 2003 ( ) ISBN R CIP ( 2003 ) ( 2 ) ( ) 850 mm 1168mm 1 /

( CIP ) /. 2 ( ). :, 2003 ( ) ISBN R CIP ( 2003 ) ( 2 ) ( ) 850 mm 1168mm 1 / ( 2 ) ( CIP ) /. 2 ( ). :, 2003 ( ) ISBN 7 81010 726 7........... R241 44 CIP ( 2003 ) 036422 ( 2 ) ( 530 200032) 850 mm 1168mm 1 /32 12. 875 373 1 5 000 1998 12 1 2003 6 2 2003 6 ISBN 7 81010 726 7 :

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 选择题 1. 设有程序段 int k=10;while(k=0)k=k-1;, 则下面叙述正确的是 D 循环体语句一次也不执行 2. 设有程序段 int x=0,s=0;while(!x!=0)s+=++x;printf(

More information

Static Enforcement of Security with Types

Static Enforcement of Security with Types 例题 1 一个 C 语言程序及其在 X86/Linux 操作系统上的编译结 果如下 根据所生成的汇编程序来解释程序中四个变 量的存储分配 生存期 作用域和置初值方式等方面 的区别 static long aa = 10; short bb = 20; func( ) { } static long cc = 30; short dd = 40; static long aa = 10; func(

More information

第五讲 数组 一维数组 二维数组 数组作为函数参数

第五讲 数组 一维数组 二维数组 数组作为函数参数 第五讲 数组 一维数组 二维数组 数组作为函数参数 一维数组 2 数组 数组 : 具有一定顺序关系的若干相同类型变量的集合体 一维数组的声明 类型标识符变量名 [n] 声明一个长度为 n 的数组 ( 向量 ) 类型标识符 : 数组元素的数据类型 ; n: 数组的长度, 即元素的个数 ; 例 : int x[5] // 声明一个长度为 5 的一维数组 一维数组的引用 变量名 [k] // 注 : 下标

More information

第 10 章结构体和枚举教案 一 授课题目 ( 教学章 节或主题 ) 10.1 结构体及结构体变量 10.2 结构体数组 二 教学时间安排 上课 2 学时 三 教学目的 要求 知识目标 : 学习结构体变量和结构体数组的定义和引用能力目标 : 掌握结构体的初步应用情感目标 : 通过结构体编程实践获得成

第 10 章结构体和枚举教案 一 授课题目 ( 教学章 节或主题 ) 10.1 结构体及结构体变量 10.2 结构体数组 二 教学时间安排 上课 2 学时 三 教学目的 要求 知识目标 : 学习结构体变量和结构体数组的定义和引用能力目标 : 掌握结构体的初步应用情感目标 : 通过结构体编程实践获得成 第 10 章结构体和枚举教案 一 授课题目 ( 教学章 节或主题 ) 10.1 结构体及结构体变量 10.2 结构体数组 二 教学时间安排 上课 2 学时 三 教学目的 要求 知识目标 : 学习结构体变量和结构体数组的定义和引用能力目标 : 掌握结构体的初步应用情感目标 : 通过结构体编程实践获得成就感, 提升 C 语言编程的兴趣 四 教学重点或难点 教学重点 : 结构体数组成员的引用 教学难点 :

More information

<4D F736F F D C4EA33D4C2C8ABB9FABCC6CBE3BBFAB5C8BCB6BFBCCAD4B6FEBCB643D3EFD1D4B1CACAD4D5E6CCE2D3EBB4F0B0B82E646F63>

<4D F736F F D C4EA33D4C2C8ABB9FABCC6CBE3BBFAB5C8BCB6BFBCCAD4B6FEBCB643D3EFD1D4B1CACAD4D5E6CCE2D3EBB4F0B0B82E646F63> 2011 年 3 月全国计算机等级考试二级 C 语言笔试真题 一 选择题 (1) 下列关于栈叙述正确的是 A) 栈顶元素最先能被删除 B) 栈顶元素最后才能被删除 C) 栈底元素永远不能被删除 D) 以上三种说法都不对 (2) 下列叙述中正确的是 A) 有一个以上根结点的数据结构不一定是非线性结构 B) 只有一个根结点的数据结构不一定是线性结构 C) 循环链表是非线性结构 D) 双向链表是非线性结构

More information

<4D6963726F736F667420576F7264202D20C1E3B5E3CFC2D4D8C4A3B0E52E646F63>

<4D6963726F736F667420576F7264202D20C1E3B5E3CFC2D4D8C4A3B0E52E646F63> 历 年 MBA MPAcc 联 考 数 学 真 题 及 答 案 详 解 (009-0) 009 年 月 MBA 联 考 数 学 真 题 及 答 案 详 解 一 问 题 求 解 ( 本 大 题 共 小 题, 每 小 题 分, 共 分 下 列 每 题 给 出 的 五 个 选 项 中, 只 有 一 项 是 符 合 试 题 要 求 的 请 在 答 题 卡... 上 将 所 有 选 项 的 字 母 涂 黑 ).

More information

Ps22Pdf

Ps22Pdf . :, 2004. 12 ISBN 7-80208 - 129-7. 2 /.... G726. 9 CIP ( 2004) 135154 : 2 : : : : : : 2 : 100733 : 010-65369524 65369530 : : : 880mm 1230mm 1 /32 : 2800 : 150 : 5000 : 2005 10 1 1 : ISBN 7-80208 - 129-7

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 7.5 函数的嵌套调用 C 语言的函数定义是互相平行 独立的 即函数不能嵌套定义 但可以嵌套调用函数 即调用一个函数的过程中, 又可以调用另一个函数 7.5 函数的嵌套调用 main 函数 1 调用 a 函数 2 a 函数 3 调用 b 函数 4 b 函数 5 9 8 7 6 结束 7.5 函数的嵌套调用 例 7.5 输入 4 个整数, 找出其中最大的数 用函数的嵌套调用来处理 解题思路 : main

More information

プログラムの設計と実現II

プログラムの設計と実現II UNIX C ls mkdir man http://www.tj.chiba-u.jp/lecture/prog2/ Ctrl+x, Ctrl+s ( )..[4]% gcc Wall o hoge hoge.c..[5]%./hoge 1 : 1 2 : 2 3 : 3 4 : 0 6..[6]% (! )..[4]% gcc Wall o hoge hoge.c..[5]%!g gcc Wall

More information

zyk00168ZW.PDF

zyk00168ZW.PDF () 0 4 5 (km).5 4 5.5 7 8.5 () 0 4 5 (km) 4 4.5 5 5.5 6 6.5 y5x. y0. 5x4 x y 9 5x y x y 9 5x y x x 6 x y. 55 y5x. y0. 5x4 x 0 x x y y y 5 x x x 4 y y y 5 () x y () y x x 4y 0 4x y x 0 0.4 y 0.5 0 5x y

More information

C/C++语言 - C/C++数据

C/C++语言 - C/C++数据 C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;

More information

untitled

untitled CHAPTER 02 2 CHAPTER 2-1 2-4 2-2 2-5 2-3 2-6 2-1 2-1-1 2-2 02 int A[3] = {10, 20, 30; A[0] 10 A[1] 20 A[2] 30 int *pa[3], A[3]; C 3 pa pa[0]pa[1]pa[2] 3 A A[0]A[1]A[2] 3 A A[0] A + i A[i] A + i &A[i]*(A

More information

Ps22Pdf

Ps22Pdf ( 0531) ( CIP). /. :, 2004. 7 ISBN 7-80153 - 959-1.... G726. 9 CIP ( 2004) 069172 : : : : : : : 2 : 100733 : 010-65369524 65369530 : : : 880mm 1230mm 1 /32 : 3300 : 150 : 5000 : 2006 8 1 2 : ISBN 7-80153

More information

Microsoft Word - Z1I07A0-17.doc

Microsoft Word - Z1I07A0-17.doc 國 文 科 文 / 林 士 敦 老 師 1 前 言 一 95 課 綱 發 表 後,40 篇 選 文 對 大 學 入 學 考 試 產 生 巨 大 影 響 這 點 從 98 99 年 兩 份 試 卷 中 可 以 看 出 不 言 可 喻, 熟 讀 40 篇 是 必 然 的 結 論 二 在 測 驗 目 標 中, 大 考 中 心 已 經 明 示 指 考 所 要 檢 測 的 內 容 與 能 力, 因 此, 準

More information

996,,,,,,, 997 7, 40 ; 998 4,,, 6, 8, 3, 5, ( ),, 3,,, ;, ;,,,,,,,,,

996,,,,,,, 997 7, 40 ; 998 4,,, 6, 8, 3, 5, ( ),, 3,,, ;, ;,,,,,,,,, ,, AB,, ( CIP) /, 000 ( /, ) ISBN 704009448 F47 CIP ( 000) 86786 55 00009 0064054588 ht tp www hep edu cn ht tp www hep com cn 006404048 787960/ 6 05 370 000 730,, 996,,,,,,, 997 7, 40 ; 998 4,,, 6, 8,

More information

: () (),, ; 30, 70, ( 10, 1, 10, ) A. B. C. D. [ ] 2. A. B. C. D. [ ] 3. A. B. C. D. [ ] 4. A.1775 B.1787 C.1674 D.1636 [ ]

: () (),, ; 30, 70, ( 10, 1, 10, ) A. B. C. D. [ ] 2. A. B. C. D. [ ] 3. A. B. C. D. [ ] 4. A.1775 B.1787 C.1674 D.1636 [ ] : () (),, ; 30, 70, 100 150 10 20 20 20 30 1. ( 10, 1, 10, ) A. B. C. D. [ ] 2. A. B. C. D. [ ] 3. A. B. C. D. [ ] 4. A.1775 B.1787 C.1674 D.1636 [ ] 5. A. B. C. D. [ ] 6. A.9 B.11 ( )1 (8 ) C.12 D.13

More information

Microsoft PowerPoint - 07 派生数据类型

Microsoft PowerPoint - 07 派生数据类型 能源与动力工程学院 目录 派生类型 陈 斌 固有数据类型 数值型 (numerical) 整型 INTEGER 实型 REAL 复数型 COMPLEX 非数值型 字符型 CHARACTER 逻辑型 ( 布尔型 )LOGICAL 自定义数据类型 ( 派生类型, derived type) 派生类型是指用户利用 Fortran 系统内部类型, 如整型 实型 复数型 逻辑型 字符型等的组合自行创建出一个新的数据类型,

More information

Ps22Pdf

Ps22Pdf A B C D A B C D A B C D a a b c x x x x x x x x x x x x x x x x x a b c x a x x x x x x x x x x a b a b a b x x x x x x x x x x x x A B C A B C A B A B A x B C x D A B C a b c a b x x x x x x x A B A

More information