(电大复习)本科.C语言程序设计A_第1页
(电大复习)本科.C语言程序设计A_第2页
(电大复习)本科.C语言程序设计A_第3页
(电大复习)本科.C语言程序设计A_第4页
(电大复习)本科.C语言程序设计A_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1 本科 C 语言程序设计 A 复习资料 一、单选题 1在每个 C 语言程序中都必须包含有这样一个函数,该函数的函数名为 (A)。 A. main B. MAIN C. name D. function 2每个 C语言程序文件的编译错误分为( B)类。 A. 1 B. 2 C. 3 D. 4 3. 字符串 a+b=12n的长度为( B)。 A. 6 B. 7 C. 8 D. 9 4. 在 switch 语句的每个 case 块中,假定都是以 break 语句结束的,则此 switch 语句容易被改写为( D)语句。 A. for B. while C. do D. if 5. 在下面的 do-while 循环语句中,其循环体语句被执行的次数为( C)。 int i=0; do i+; while(i0 & x10 B x10 C x0 & x10 13当处理特定问题时的循环次数已知时,通常采用( A)循环来解决。 A for B while C do-while D switch 14假定 i 的初值为 0,则在循环语句“ while(iO&y=5 43.循环体至少被执行一次的循环语句为 (C)。 A.for B.while C.do-while D.任一种循环 44.假定 n 的值为 5,则表达式 n+的值为 (B)。 A.6 B.5 C.4 D.7 45.假定一个二维数组的定义为 int a34=3,4, 2, 8, 6号 ,则元素 a2O值为 (A)。 A.0 B.2 C.4 D.6 46.假定一个函数原型为 char *func(int n),则该函数的返回类型为 (D)。 A. int B. int* c.char D.char* 47.假定 a 为一个字符数组名,则元素 ai的指针访问方式为 (B)。 A.a+i B.*(a+i) C.&a+i D.*a+i 48.假定有语句为 int *p=calloc(10+20, sizeof(int),则 p 所指向的动态数组中所包含的元素个数为 (C)。 A.10 B.20 c.30 D.40 49.十进制数 50 表示成符合 C 语言规定的八进制数为 (D)。 A. 20 B.32 C.62 D.062 50.若要以读和写两种操作方式打开一个二进制文件,当文件不存在时返回打开失败信息,则选用的打开方式字符串为 (C)。 A.r+ B.ab+ C. rh+ D.wb+ 二、填空题 1.在一个 C 语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为 (#include ) 2.用于从键盘上为变量输入值的标准输入函数的函数名为 (scanf) 3.假定一个枚举类型的定义为 enum RAab, ac, ad, ae;,则ac的值为 (1) 4. double 类型的长度为 (8) 5.执行 int x=45, y=13; printf(%d, x/y);语句序列后得到的输出结果为 (3) 6.把表达式 x=x+y 转换成复合赋值表达式为 (x+=y) 7.假定 x的值为 5,则执行 a=(!x)?10:20);语句后 a的值为 (20) 8.假定一维字符指针数组的定义为 char* a8;,则该数组占用的存储空间的字节数为 (32) 9.假定 二维数组的定义为 double aMN;则数组元素的行下标取值范围在 (0M-1)之间 10.空字符串的长度为 (0) 11.在所有函数定义之外定义的变量,若没有被初始化则系统隐含对它所赋的初值为 (0) 12.若 p指向 x,则 (*p)与 x的表示是等价的。 13. 直接访问表达式 (*fp).score 所对应的间接访问表达式为(fp-score) 14一个函数定义由 函数头 _和函数体两部分组成。 15. 执行“ printf(%c,F-2);”语句后得到的输出结果为 D 。 16 int类 型的长度为 4 。 17. 表达式 (float)25/4 的值为 6.25 。 18若 x=5,y=10,则 xy 的值为 0(假) 。 33. 假定二维数组的定义为“ int a35;”,则该数组所含元素的个数为 15 。 34. 执行“ typedef int ABC10;”语句把 ABC 定义为具有 10 个整型元素的 _数组 _类型。 35. strcat()函数用于 连接 两个字符串。 36假定 p 所指对象 的值为 25, p+1 所指对象的值为 46,则 *p+的值为 25 。 37. 若要把一个整型指针 p转换为字符指针,则采用的强制转换表达式为 (char*)p 。 38. NULL 是一个符号常量,通常作为空指针值,它对应的值为 0 。 39. 假定要动态分配一个类型为 struct Worker 的对象,并由 r指针指向这个 对象,则 使用的表 达式为 struct Worker* r =malloc(sizeof(struct Worker)。 40. 在一个 C语言程序文件中,若要包含另外一个头文件或程序文件,则应使 用的预处理命令为 #include。 41. 用于从键盘上为变量输入值的标准输入函数的函数名为scanf 。 42. 假定一个枚举类型的定义为“ enum RAab,ac,ad,ae;”,则ac 的值为 _1 。 43 double 类型的长度为 _8_。 44. 执行“ int x=45,y=13;printf(%d,x/y);”语句序列后得到的输出结果为 _3_。 45. 表达式 x=x+y 表示成复合赋值表达式为 x+=y 。 46. 假定 x=5,则执行“ a=(!x? 10: 20);”语句后 a的值为 _20_。 47. 假定一维字符指针数组的定义为“ char* a8;”,则该数组占用的存储空间的字节数为 _32_。 48. 假定二维数组的定义为“ double aMN;”,则每个数组元素的行下标取值范围在 _0M-1 之间。 49. 空字符串的长度为 _0_。 50. 在函数外定义的变量,若没有被初始化则系统隐含对它所赋的初值为 0_。 51. 若 p指向 x,则 *p 与 x的表示是等价的。 52. 与 结构 成员 访问 表达 式 (*fp).score 等价 的表 达式为 fp-score 。 53执行“ printf(%c,A+2);”语句后得到的输出结果为 _C_。 54 short int 类型的长度为 _2_。 55. 用类型关键字表示十进制常数 3.26f的类型为 float 。 56. 假定 y=10,则表达式 +y*3 的值为 _33_。 57. 逻辑表达式 (x=0 & y5)的相反表达式为 (x! =0 | y void main() int i,j,k=0; for(i=0; i void main() int x=20; int i=2; while(i void main() int a8=70,63,54,95,40,75,90,66; int i, s=0; for(i=0; i=70 & ai30) break; if(i%2=0) s+=i; printf(s=%dn,s); 运行结果: s=42 12. #include void main() int a9=36,25,48,24,55,40,18,66,20; int i, b1, b2; b1=b2=a0; for(i=1; ib1) b1=ai; if(aiage, p-pay+20); 运行结果: 104 2370.00 16. #include void main() int i, s=0; for(i=1;i #define N 6 void main() int i, aN=2, 5, 8, 10, 15, 21; for(i=0; i #include void main() int i; unsigned int len; char* a5=student , worker , cadre ,soldier, zzeasan123; len=strlen(a0); for(i=1; ilen) len=strlen(ai); printf(%dn, len); 运行结果 : 10 19. #include void main() int a, b; for(a=2, b=3; b void LE(int* a, int* b) int x=*a; *a=*b; *b=x; void main() int x=15, y=26; printf(%d %dn, x, y); LE(&x, &y); printf(%d %dn, x, y); 运行结果: 15 26 26 15 21. #include void main() 6 int i, s1=0, s2=0; for(i=0;i const int M=20; void main() int i=2; while(1) if(iM/2) break; if(M%i=0) printf(%d ,i); i+; printf(n); 运行结果: 2 4 5 10 23. #include int a6=4,5,6,15,20,12; void main() int i,s1,s2; s1=s2=0; for(i=0; i void main() int a33=3,5,7,9,11,13,6,8,20; int i,*p=&a00; for(i=0;i10) printf(%d ,*p); p+; printf(n); 运行结果: 11 13 20 25. #include #include struct Worker char name15; int age; float pay; void main() struct Worker x; char *t=liouting; int d=38; float f=400; strcpy(,t); x.age=d; x.pay=f; x.age+; x.pay*=2; printf(%s %d %6.2fn,,x.age,x.pay); 运行结果: liouting 39 800.00 26. #include void main() int i,j ,k=0; for (i=O;i void main() int x=20; int i=2; while(i void main() int a8=76,63,54,95,40,75,90,66; int i, s=0; for(i=0;i=70 & ai int WF(int x , int y) x=x+y; y+=x; return x+y; void main() int x=3 , y=8; printf(%dn ,WF(x,y); 运行结果 : 30 30. #include int LA(int *a, int n) int i,s=O; 7 for(i=O; i=k) c+; return c; 函数功能 :统计并返回一维整型数组 an中大于等于 k 的值的个数。 2. void QA(struct Worker a, int n) int i; for(i=O; i int SA(int a, int b) if(ab) return 1; else if(a=b) return 0; else return -1; 函数功能:比较两个整数 a和 b 的大小,若 ab 则返回 1,若 a=b则返回 0,若 adata); f=f-next; printf(n); 假定 struct IntNode 的类型定义为: struct IntNode int data; struct IntNode* next; 函数功能:遍历并输出由 f所指向的单链表中每个结点的值。 5. int SG(int x) /x 为大于等于 2的整数 int i=2; if(x=2 | x=3) return 1; while(i*idata; f=f-next; while(f) if(f-datax) x=f-data; f=f-next; return x; 假定 struct IntNode 的结点类型定义为: struct IntNode int data; struct IntNode* next; 函数功能:求出并返回由 f所指向的单链表 中所有结点的最大值。 五、按题目要求编写程序或函数

温馨提示

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

评论

0/150

提交评论