ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:34.43KB ,
资源ID:10105081      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/10105081.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(电大《C语言程序设计》2019-2020模拟试卷及答案.docx)为本站上传会员【精****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

电大《C语言程序设计》2019-2020模拟试卷及答案.docx

1、《C语言程序设计》2019-2020模拟试卷及答案 一、单项选择题。把合适的选项编号填写在括号内。 1. 不符合C语言规定的复合语句是( )。D A. {} B. {;} C. {x=0;} D. {y=10} 2. C语言中的选择类语句有两条,它们是( )。A A. if 和 switch B. if 和 else C. switch 和 case D. else 和 case 3. 在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。A A. main B. MAIN C. name D. function 4. 在C语言程序中,多行注释语句使用的开始标记符为

2、 )。B A. // B. /* C. */ D. ** 5. 用于输出表达式值的标准输出函数是( )o C A. scanf () B. print () C. printf () D. output 0 6. 在printf ()函数调用的格式字符串中,每个格式符的先导字符为( )o B A. # B. % C. $ D. @ 7. 由C语言源程序文件编译而成的目标文件的扩展名为()o C A. cpp B. exe C. obj D. C 8. 由C语言目标文件连接而成的可执行文件的扩展名为()。B A. cpp B. exe C. obj D. c 9. 每个C程

3、序文件在编译时可能出现有警告性错误,其对应的标识符号为( )。A A. warning B. error C. warn D. err 10. 在C语言中,表示换行符的转义字符为( )o C A. \f B. \r C. \n D. \m 11. 字符串"a+b=12\n"的长度为( )o B A. 6 B. 7 C. 8 D. 9 12. 要定义a和b为两个整型变量,则使用的定义语句为( )o B A. int a;b; B. int a, b; C. int a b; D. int a:b; 13. 下列数值中最大值是()o C A. 28/8 B. 35/13 C. 2

4、8%8 D. 35%5 14. 下列数值中最小值是()。D A. 28/8 B. 35/3 C. 28%8 D. 35%3 15. 已知x的初值为5,则下列各表达式中的最大值为( )0 D A. x%=3 B. x+=10 C. x/=2 D. x*=4 16. x>5的相反表达式为( )o D A. x<5 B. x!=5 C. x>=5 D. x<=5 17. 当处理问题时的循环次数是确定的,则采用的最合适的循环方式为( )。A A. for B. while C. do-while D. switch 18. 循环体至少被执行一次的循环语句为( )。C A. for

5、 B. while C. do-while D.任一种 19. 流程控制类语句包括的3类语句为( )o A A.选择、循环、跳转 B.选择、循环、输入 C.选择、输入、输出 D.循环、选择、函数 20. 在下列的语句中,必须以分号作为结束的语句是( )。C A. for B. while C. do D. switch 21. 在一个数组中,数组元素a[i]前面的元素个数为( )0 A A. i B. i+1 C. i-1 D. 2*i 22. 假定二维数组的定义语句为“int a[3] [5]; ”,则该数组所含元素的个数为(B )。 A. 8 B. 15 C. 10 D.

6、 12 23. 假定二维数组的定义语句为“char a[M] [N]; ”,则该数组所含元素的个数为(C)。 A. (M—1)*(N-1) B. M*N—1 C. M*N D. M*N+1 24. 假定二维数组的定义语句为“int*a[3][5];”,则该数组所占用的存储空间的字节 数为()o D A. 120 B. 15 C. 30 D. 60 25. 若需要求出一个字符串的长度,则选用的函数是( )。A A. strlen B. strcmp C. strcat D. strcpy 26. 将两个字符串连接起来组成一个字符串时,选用的函数是( )0 C A. strlen

7、B. strcap C. strcat D. strcmp 27. 若需要把一个字符串赋给字符数组,则选用的函数是( )。D A. strlen B. strcmp C. strcat D. strcpy 28. 假定p所指对象的值为25, p+1所指对象的值为42,则表达式*+切的值为(B )。 A. 25 B. 42 C. 26 D. 43 29. 若p指向x,则与x的等价表示为( )o B A. p B. *p C. *x D. &x 30. 假定a为一个字符数组名,则元素a[8]的地址比该数组的首地址大( )。B A. 4个字节 B. 8个字节 C. 16个字节 D.

8、32个字节 31. 下面的保留字不能作为函数返回类型的是( )o C A. void B. int C. sizeof D. long 32. 若一个函数声明为“double* function。;",则该函数的返回值类型为(B )。 A.实数型 B.实数指针型 C.函数指针型 D.数组型 33. 在下面的函数声明语句中存在着语法错误的是( )0 C A. AA(int a, int b) B. AA(int, int) C. AA(int a; int b) D. AA(int a, int) 34. 函数定义参数表中的每个形参变量,其作用域范围为所在的整个( )o C A

9、程序 B.文件 C.函数 D.参数表 35. 在函数体中定义的变量具有( )o B A.全局作用域 B.局部作用域 C.文件作用域 D.函数作用域 36. 在结构类型的定义中,使用的关键字是( )o A A. struct B. union C. static D. enum 37. 假定一个链表中结点的结构类型为“struct AA(int data, struct AA *next;};”, 则next数据成员的类型为( )o B A. struct AA B. struct AA* C. AA D. int 38. 标准输入设备键盘的文件流标识符是( )

10、o A A. stdin B. stdout C. stderr D. stdio 39. 标准输出设备显示器的文件流标识符是( )。B A. stdin B. stdout C. stderr D. stdio )0 D D. fgetc () )0 A D. fgetc () 40. 从一个文本文件中读取一个字符的系统函数为( A. fputc () B. fgetsO C. fputsO 41. 向一个文本文件中写入一个字符的系统函数为( A. fputc() B. fgetsO C. fputsO 42. 从一个二进制文件

11、中读取数据的系统函数为( )。A A. fread () B. fgetsO C. fwrite () D. fgetcO 43. C语言中使用的字符常量,其起止标记符是( )。A A.单引号 B.双引号 C.中括号 D.尖括号 44. 一个程序文件开始使用的每条预处理命令,其首字符必须是( )。B A. @ B. # C. $ D. % 45. 在scanf ()函数调用的格式字符串中,每个格式符的先导字符为( )。B A. # B. % C. $ D. @ 46. 控制字符'\n'表示( )o D A.回车 B.响铃 C.换页 D.换行 47. 运算符优先级最高的是(

12、o A A. () B. = C. + D. < 48. 设x和y均为逻辑值,则x&&y为真的条件是()°A A.它们均为真 B.其中一个为真 C.它们均为假 D.其中一个为假 49. 若n的值为10,则执行“for(i=l; i

13、符串,保存它至少需要占用的存储字节数为( )。C A. n B. n-1 C. n+1 D. n+2 52. 一个指针类型的简单变量占用内存中的字节数为( )。B A. 2 B. 4 C. 8 D. 16 53. 已知“char a[3][5];”,则元素a[2] [3]的地址比该数组的首地址大( )。A A. 13个字节 B. 26个字节 C. 52个字节 D. 48个字节 54. 在C语言中,用户定义的标识符分为4种作用域,下列选项中不属于这4种作用域 的是( )o B A.全局 B.语句 C.文件 D.局部 55. 假定要访问一个结构指针变量x中的数据成员a,

14、则表示方法为( )。B A. x. a B. x~>a D. x {a} 56.在C语言中, 关闭一个数据文件的系统函数为( A. fopen () B. fcloseO C. freadO D. fwrite () 二、是非判断题。根据叙述正确与否在其后面的括号内打对号“J”或叉号“X”。 1. 若要在程序文件中使用标准输入和输出函数,则需要引入的系统头文件为stdio.h。 2. 当需要在程序文件中引入系统头文件时,不需要使用#include命令。( )否 3. 在C语言程序中,只有一种使用注释语句的方法。( )否 4. 常数3. 26是双精度定

15、点数。( )是 5. 常数3. 26是双精度浮点数。( )否 6. 常数3. 26f是单精度定点数。()是 7. 在一条变量定义语句中,只能定义同一类型的变量。( )是 8. 在一条变量定义语句中,当同时定义多个变量时,各变量之间只能使用逗号分开。 ()是 9. 使用const语句定义一个符号常量时,则必须对它同时进行初始化。( )是 10. 表达式x=x+y表示成复合赋值表达式为x=+y。( )否 11. 表达式x=x+l表示成增量表达式为x++o ( ) 12. 在C语言中,求一个整数的绝对值的数学函数为abs(x)。( )是 13. 在for循环语句的头部,for后而

16、括号内的各表达式之间使用逗号分开。( ) 14. 在for循环语句的头部,for后面括号内的各表达式之间使用空格隔开。( ) 15. 在for循环语句的头部,for后面括号内共有2个表达式位置。( )否 16. do-while循环语句是以分号结束的语句。( )是 17. break语句带有语句体。( )否 18. return语句只有保留字,没有其他成分。( )否 19. 在一维数组的定义语句中,可以给数组中每个元素赋初值。( )是 20. 在一维数组的定义语句中,给数组赋初值的部分是用一对花括号括起来的数据表。 21. 在一维数组的定义语句中,给数组赋初值的部分是用一对圆

17、括号括起来的数据表。 ( )否 22. 假定二维数组的定义语句为“double a[M][N];”,则每个数组元素的行下标取值范 围在1〜M之间。( )否 23. 字符串允许为空,并且其长度为Oo ( )是 24. 存储一个长度为0的空字符串至少需要占用1个字节的存储空间。( )是 25. 一个二维字符数组a[10] [20]中存储每个字符串的最大长度为20。( )否 26. 在定义指针变量的语句中,对指针变量可以赋初值。( )是 27. 在定义指针变量的语句中,最前而的类型关键字仍然允许是指针类型。( )是 28. 假定a是一个一维数组,则数组名a的值和&a[0]的值相等。(

18、 )是 29. 假定a是一个一维数组,则进行a++运算是不允许的。( )是 30. 已知“int a[10], *p=a;",则进行p++运算是不允许的。( )否 31. 用于释放动态存储空间的函数为free,使用它需要带有一个参数。( )是 32. 在一个函数定义中,参数表可以为空。( )是 33. 在一个函数定义中,参数表中的参数类型可以为void类型。( )否 34. 对于不加static标识的局部变量,若没有对它进行初始化,则它的初值是不确定 的。( )是 35. 在函数定义中,若存在着调用自身函数的函数调用表达式,则称此函数为非递归函 数。( )否 36. 在C语

19、言程序中,主函数也可以成为递归函数。( )否 37. 在C语言中,一个结构类型的长度等于所含的所有数据成员类型长度的最大值。 ( )否 38. 在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。( )否 39. 定义结构类型的同时能够定义它的变量。( )是 40. 在结构成员访问运算符中,点运算符和箭头运算符的左边均为结构指针变量。 ( )否 41. 在一个链表的结点结构中,存在着一个指针域,但不一定指向自身结点类型。( ) 否 42. 在一个链表中,表头结点和表尾结点均无前驱结点。( )否 43. 在C语言中,打开一个数据文件的系统函数为fopen(),它带有两

20、个字符串参数, 用来给定文件名和打开方式。( )是 44. 在C语言中,打开一个数据文件的系统函数为fopen(),它带有一个字符串参数, 用来给定文件的打开方式。( )否 45. 每次只能向文本文件中写入一个字符,不能一次写入一个字符串。( )否 46. 在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。( ) 是 47. 一个C语言程序能够包含多个用户头文件。( )是 48. 在定义一个变量时,不能给它赋初值。( )否 49. 表达式x=x+y表示成复合赋值表达式为x+=y。( )是 50. 关系表达式(x!=0)的等价表达式为(成)。( )否 51 .

21、当循环次数确定时,while循环语句能够转换为for循环语句。( )是 52. 在一维数组的定义语句中,数组名后带有一对圆括号。( )否 53. 假定二维数组的定义语句为“double a则每个数组元素的列下标取值范 围在0〜NT之间。( )是 54. 在C语言中,在定义一个字符数组时,不能利用一个字符串进行初始化。( ) 否 55. 假定一个数据对象为int*类型,则指向该对象的指针类型为int**。( )是 56. 进行动态存储分配的calloc 0函数带有一个参数。( )否 57. 对于标识为static属性的变量,若没有对它进行初始化,则默认的初值为lo( ) 否 58

22、 在结构类型的定义中,结构类型名在关键字struct和定义体之间。( )是 59. 在结构成员访问运算符中,点运算符(・)为双目运算符。( )是 60. 当向字符文件输出一个换行符时,实际将输出的是回车和换行这两个字符。( ) 是 三、程序填空题。分析程序后把合适的内容填写在括号内。 1. 执行下面程序的输出结果为( )。15 #include void main() ( int a=5, b=8, c=6, d=15, x, y; if(a>=b) x=a; else x二b; if(c>=d) y=c; else y二d; if(x>=y) pri

23、ntf(〃黑d\n〃,x); else printf("晶d\n”, y); } 2. 执行下面程序的输出结果为( )o y=ll #include void mainO ( int x=5, y=0; switch(2*x-3) { case 4: y+=x; break; case 7: y+=2*x+l; break; case 10: y+=3*x; break; } printf("y=%d\n〃,y); } 3. 执行下面程序的输出结果为()o s=78 #include void mainO ( int i,s=0;

24、 for(i=l;i<10;i+=3) s+=i*(i+l); printf(〃s=%d\n”,s); ) 4. 执行下而程序的输出结果为()o s=56 #include void mainO ( int i=0, s=0; while(s<50) {i+=2; s+=i*i;} printf(〃s=%d\n〃,s); } 5. 执行下面程序的输出结果为()o s=30 #include void mainO ( int x=30, i=l, s=0; do {s+=i*i; i++;} while(s

25、tf (〃s=%d\n”,s); ) 6. 执行下而程序的输出结果为()o s=46 #include void main() ( int a[8] = {3, 8, 6, 5, 9, 2, 8, 5); int i, s=0; for(i=0;i〈8;i++) s+=a[i]; printf("s=%d\n〃,s); ) 7. 执行下而程序的输出结果为()。s=58 #include void main() ( int a[3] [3] = ({3, 8, 6), {5,9,2}, {8,5,12}}; int i, j,

26、s=0; for(i=0;i<3;i++) for(j=0;j<3;j++) s+=a[i][j]; printf (〃s=%d\n”, s); ) 8. 执行下而程序的输出结果为()o s=30 #include void mainO ( int a[3] [3] = ({3, 8, 6), (5, 9, 2), {8,5,12}}; int i, j, s=0; for (i=0;i<3;i++) for(j=0;j<3;j++) if (a[i] [j]%3=0) s+=a[i] [j]; printf ("s=%d\n〃, s);

27、 } 9. 执行下面程序的输出结果为()o 80 #include void main() { int a[8] = {6,8, 7, 12, 5, 15, 18, 9); int s=0; int *p=a; while(p #define N 8 void main () { int a[N] = {3, 5, 8, 10, 15, 20, 32, 66); int i, x; for(i

28、0; i void mainO ( int a[8] = (12,15, 20, 8, 5, 9,16, 10); int i, j, x=a[0]+a[l]; for(i=0; i<8; i++) for(j=i+l; j<8; j++) if (a[i]+a[j]>x) x=a[i]+a[j]; printf ("%d

29、 ”, x); ) 12. 执行下而程序的输出结果为()。s=30 #include void main() ( int a[3] [3] = ({3,8, 6), (5,9,2), (8, 5, 12}}; int i, j, s=0; for (i=0;i<3;i++) for(j=0;j<3;j++) if (a[i] [j]%3==0) s+=a[i] [j]: printf("s=%d\n〃,s); } 13. 当使用xk3 (5)调用此函数,并假定从键盘上输入的5个整数为3、4、7、8和10, 则返回值为()o 32 int xk3(i

30、nt n) ( //n为大于等于1的整数 int i,x, s=0; for (i=0; i int xl=5; static int x2=8; void mainO ( int x3=20; while(xl+x2

31、o. h> int fn3(int a, int b) ( int c=a; a=b; b=c; return a+2*b-3; ) void mainO { int a=3, b=5; int c=fn3(a+2, b+3); printf("%d\n〃,3*a+b+c); }2 16. 执行下面程序的输出结果为( )o 8 5 #include void mainO { int x=5, y=8; if(x>=y) printf (,,%d %d\n”, x, y); else printf("%d %d\n”, y, x); } 17

32、 执行下面程序的输出结果为()o f2=81 #include void mainO ( int i,fl=l,f2; for(i=2;i<6;i++) ( f2=3*f1; } printf("f2=%d\n”, f2); } 18. 执行下面程序的输出结果为()o 85 #include #define N 7 void main() { int a[N]; int i; a[0]=l; a[l]=2; for(i=2; i

33、 a[NT]); } 19. 执行下而程序的输出结果为()o x=7 #include void mainO { int a[8] = (10, 8, 16, 15, 9, 21, 7, 16); int i,x=a[0]; for(i=l;i<8;i++) if (a[i] void mainO { int a[3] [3] = ({2, 3,4), (5, 6,8), {10,15,20});

34、 int *p=(int*)a; int s=0; while(p<(int*)a+9) s+=*p++; 四、编程题。按题目要求编写程序或函数。 1. 补充完整下而的函数定义,计算出1+1*3+2*3+..・+n*3的值并返回。 int FF(int n) ( int i, s=l; 〃在下而添上一行for循环语句,循环变量为i,累加变量为s return s; ) 答案:for (i=l; iVn; i++) s+=i*3; 2. 根据函数原型“int FF(int a[], int n)",编写函数定义,计算并返回数组a[n] 中所有元素之和。 答案:int F

35、F(int a[], int n) { int i, sum=0; 〃1 分 for(i=0; i='a' &&*ptr〈='z') n++; 〃3

36、分 ptr++; 〃6 分 4. 编写一个主函数,计算并输出表达式1+22+3% ..+102的值。 答案: #include void main() { int i, s=0; //I 分 for(i=l; i<=10; i++) s+=i*i; //4 分 printf("s=%d\n〃,s); //6 分 ) 注:若s的初值为1,则循环变量i的初值应修改为2o 5. 补充完整下而的函数定义,要求返回二维数组a[m] [n]中所有元素的平均值。假定 在计算过程中采用变量s存放累加值,采用i和j作为扫描数组的循环变量。 double Mean (

37、double a[][N],int m, int n) { int i, j; double s=0. 0; 〃在下而添上合适的for双重循环语句 return s/(m*n); 答案: for(i=0; i

38、同时iNj,则为一个配对。 int DD(int a[], int n, int MM) { int i,j,c=0; //用i和j作为循环变量,用c作为统计变量 //在下而补充一个双重for循环语句 答案: for(i=0; i void main() ( int 〃用i作为循环变量 printf (/z从键盘输入10个整数:\n〃); //向下补充程序内容,用两个for循环实现 printf(〃\n〃); ) 答案: for (i=0; i<10; i++) scanf("%d〃,&a[i]); //3 分 for(i=9; i>=0; i--) printf (/z%d 〃,a[i]); //6 分 注:第1行中的&a[i]也可替换为a+i

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服