版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言程序设计模拟试题.一、填空题.1. C语言程序的三种基本结构是 顺序结构,选择结构,循环结构。2.if语句控制表达式只有其值为非0表示逻辑值“真”,其值为0表示逻辑值“假”。3.说明语句:int b10; 定义了数组b有10个整型元素,这些数组元素的下标是从0开始,最大为9。4. 有定义:int a34=1,2,0,4,6,8,10;则初始化后,a12=0,a21=6.5. 设x,y,z均为int 型变量,C语言描述”x或y中有一个小于z”的表达式是xzyz。6. 若for循环用以下形式表示: for(表达式1;表达式2;表达式3) 循环体语句则执行语句for(i=0;i3;i+) pr
2、intf(“*”);时,表达式1执行1次,表达式3执行3次。7.说明语句:int a,*p; 定义了一个整型变量a和一个指针变量p,使指针变量p指向整型变量a的语句是:p=&a,此时*p与变量a等价。8. 在C语言中,十进制数30的八进制表示形式是036 ,十六进制表示形式是0x1e9. C程序是由函数组成的。一个C程序由一个main()函数和若干个子函数构成。函数的构成可分为两部分:函数说明(或函数头) 和函数体。10.标识符是指程序中的符号常量、变量、函数等对象的名称。在C语言中,标识符只能由字母、数字和下划线组成,且第一个字符必须为字母或下划线。11.在C语言中整型常量有十进制、八进制和
3、十进制三种表示方法。实型常量有小数形式和指数两种表示方法。12.C语言中语句的作用是向计算机系统发出操作命令,从而完成一定的操作任务。C语句可以分为:表达式语句、函数调用语句、控制语句 、复合语句和空语句等五种类型。 二、单项选择题)1.一个C语言的执行是从 A(A)本程序的main函数开始,到main函数结束(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束(C)本程序的main函数开始, 到本程序文件的最后一个函数结束 (D)本程序文件的第一个函数开始,到本程序main函数结束2.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 C(A) 必须为字母 (B)
4、 必须为下划线(C) 必须为字母或下划线 (D) 可以是字母,数字和下划线中的任一种字符3. 以下选项中属于C语言的数据类型是 DA)复数型 B)逻辑型 C)集合型 D)双精度型4.以下叙述正确的是 C(A) 在C程序中,main函数必须位于程序的最前面(B) C程序的每行中只能写一条语句(C) C语言本身没有输入输出语句 (D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误 5. 下列可以正确表示字符型常量的是 B A) a B) t C) n D) 297 6.下列形式的常数中,C程序不允许出现的是 A 。(A)123 (B) .45 (C) 25.6e-2 (D) 4e3 7.
5、假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b) 的值是 B(A) 7 (B) 8 (C) 6 (D) 28.以下叙述不正确的是D(A)在C程序中,逗号运算符的优先级最低(B)在C程序中,APH和aph是两个不同的变量(C)若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变(D)在C程序中,无论是整数还是实数,都能被准确无误地表示9.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D(A) float (B) char (C) int (D) double 10.已知int i,a;执
6、行语句i=(a=2*3,a*5),a+6; 后,变量i的值是 CA) 6 B) 12 C) 30 D) 36 11.在C语言中,要求运算数必须是整型的运算符是 B(A) / (B) % (C) != (D) +12.若变量已说明为int型,要给a,b,c输入数据,以下正确的输入语句是 DA) scanf(%d%d%d,&a;&b;&c); B) scanf(%d%d%d,a,b,c);C) scanf(%D%D%D,&a,&b,&c) D) scanf(%d%d%d,&a,&b,&c); 13.以下关于运算符优先顺序的描述中正确的是 C(A)关系运算符算术运算符赋值运算符逻辑运算符(B)逻辑运
7、算符关系运算符算术运算符赋值运算符(C)赋值运算符逻辑运算符关系运算符算术运算符(D)算术运算符关系运算符赋值运算符逻辑运算符14.设 x=3,y=2,则表达式x*=y+8的值为 C(A) 3 (B) 2 (C) 30 (D) 1015.对for(表达式1; ;表达式3)可理解为 BA) for(表达式1;0;表达式3) B) for(表达式1;1;表达式3)C) for(表达式1;表达式1;表达式3) D) for(表达式1;表达式3;表达式316.有数组定义:char array=China; 则数组array所占用的内存空间为 AA) 6B B) 5B C) 11B D) 10B17.
8、C语言规定,简单变量作实参时,它和对应形参之间的数据传递是 BA) 地址传递 B) 单向值传递 C) 由实参传递给形参,再由形参传回实参 D) 由用户指定传递方式18. 如下程序段执行后的输出结果是c #include void main() struct abcint x;int y; num2=20,5,6,7;printf(%dn,num0.x/num0.y*num1.y); A) 0 B) 20 C) 28 D) 2419.为表示关系: XYZ,应使用的C语言表达式是 A(A) (X=Y)&(Y=Z) (B) (X=Y)AND(Y=Z)(C) (X=Y=Z) (D) (X=Y)&(Y=
9、Z)20.下列程序运行结果是 C#include void main() int tt(int); int i,a0=3,2,6,9,10,11,8,13,4,5;for(i=0;iy);(B) if(x=y)&(x!=0) x+=y;(C) if(x!=y) scanf(“%d”,&x);else scanf(“%d”,&y);(D) if(xy) x+;y+;22.下面程序段的运行结果是 Aint a=1,b=2,c=2,t;while(abc) t=a;a=b;b=t;c-;printf(“%d,%d,%d”,a,b,c);( A) 1,2,0 (B) 2,1,0 (C) 1,2,1 (
10、D) 2,1,123.以下能正确计算1*2*3*4*5*6*7*8*9*10的程序段是 C(A) do i=1;s=1; (B) do i=1;s=0; s=s*i; s=s*i; i+; i+; while(i=10); while(i=10); (C) i=1;s=1; (D) i=1;s=0; do s=s*i; do s=s*i; i+; i+; while(i=10); while(i=10);24.若用数组名作函数调用的实参,传递给形参的是 A(A) 数组的首地址 (B) 数组第一个元素的值(C) 数组中全部元素的值 (D) 数组元素的个数25.以下不正确的说法为 D(A) 在不同
11、函数中可以使用相同名字的变量。(B) 形式参数是局部变量(C) 在函数内定义的变量只在本函数范围内有效(D) 在函数内的复合语句中定义的变量在本函数范围内有效26. 下列程序的运行结果是: A #include void main() int x=1,a=0,b=0; switch(x) case 0:b+;break; case 1:a+;break; case 2:a+;b+;break;printf(a=%d,b=%dn,a,b);(A) a=1,b=0 (B) a=2,b=0(C) a=1,b=1 (D)a=2 ,b=127.在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使
12、用的全局变量,则该变量需要使用的存储类别是 D(A ) extern (B)register (C)auto (D) static 28.C语言规定,函数返回值的类型是由 C(A) return语句中的表达式类型所决定(B) 调用该函数时的主调函数类型所决定(C) 在定义该函数时所指定的函数类型所决定(D) 调用该函数时系统临时决定29运行下面程序,从键盘输入:1 2 3 4 5 -1,运行结果:B#include void main() int n,k=0; do scanf(%d,&n); k+=n; while(n!=-1); printf(k=%d,n=%dn,k,n);(A)k=15
13、,n=-1 (B) k=14,n=-1 (C)k=15,n=5 (D)k=14,n=5下列程序的运行结果是:30. 变量的指针,其含义是指该变量的 B(A) 值 (B) 地址 (C) 名 (D) 一个标志31. 下列程序的运行结果是:A#include void main() int i=1,j,k; j=i+;printf(j=%d,i=%dn,j,i); k=+i;printf(k=%d,i=%dn,k,i); (A ) j=1,i=2 k=3,i=3 (B) j=2,i=2 k=3,i=3 (C) j=1,i=1 k=3,i=3 (D) j=1,i=2 k=3,i=2 三、程序设计题1、
14、求1-100中含5的所有数之和#include int Is1(int i) while(i) if(i%10=5) return i; i/=10; return 0;void main() int i,sum=0; for(i=1;i=100;i+) if(Is1(i) printf(%d,i); sum+=i; printf(n%dn,sum);2.编程:1+2+3+100 #include stdio.hvoid main() int n=1,sum=0; while(n=100) sum+=n;n+; printf(Sum=%dn,sum);3、编写一个程序以实现以下功能:子函数fu
15、n计算:m=1-2+3-4+5-6+7-8+9-10主函数中调用子函数并输出结果。方法一:#includeint fun(int n) int i,sum=0,f=1; for(i=1;i=n;i+) sum+=(f*i); f=-f; return sum;int main() int n=10; printf(%dn,fun(n);方法二、不用子函数main()int i,sign=1,sum;sun=0;for(i=1;i=10;i+) sum+=sign*i; sign=-sign; printf(sum=%dn,sum);4、编程求S=1!+2!+3!+4!+5!方法一、#inclu
16、de main() double s,time(); s=time(5); printf(s=%.2en,s);double time (int m) double t=1; int sum(); int i; for(i=1;i=m;i+) t=t*sum(i); return t;double sum(int n) double s;if(n=0n=1) s=1 else s=s*s(n-1); return s;方法二、long fact(int n)if(n=1) return 1; else return n*fact(n-1); main()int i=1; long s=0; w
17、hile(iy则将x与y的值进行交换,然后再用x与z进行比较,如果xz则将x与z的值进行交换,这样能使x最小。程序源代码:main()int x,y,z,t;scanf(%d%d%d,&x,&y,&z);if (xy)t=x;x=y;y=t; /*交换x,y的值*/if(xz)t=z;z=x;x=t;/*交换x,z的值*/if(yz)t=y;y=z;z=t;/*交换z,y的值*/printf(small to big: %d %d %dn,x,y,z);6.下面程序的功能是从键盘输入10个整数,保存在数组a中,选出其中的最大数,与第1个数交换。#include void main() int
18、a10,temp,i,k; for(i=0;i10;i+) scanf(%d,&a); k=0; for(i=1;i10;i+) if(akai) k=i; temp=a0; a0=ak; ak=temp; for(i=0;i=a&c=A&c=0&c=9)digit+;elseothers+;printf(all in all:char=%d space=%d digit=%d others=%dn,letters,space,digit,others);8编程求一个float类型数组中n(n=10)个数据的平均值。#include float age(float,int);void main
19、() float a10=43.0,33,14,32,9,21,4,32.2,56,11,ave; ave=age(a,10); printf(average=%.2fn,ave);float average(float x ,int n) float sum=0,ave;int i;for(i=0;i10;i+) sum+=xi;ave=sum/n;return ave;9、求一个3*3矩阵对角线元素之和程序分析:利用双重for循环控制输入二维数组,再将aii累加后输出。程序源代码:main()float a33,sum=0;int i,j;printf(please input rectangle element:n);for(i=0;i3;i+)for(j=0;j3;j+)scanf(%f,&aij);for(i=0;i3;i+)sum=sum+aii;printf(duijiaoxian he is %6.2f,sum);10. 任意输入20个整数,分别计算并输出其中负数的和。#include void main() int x,s1=0,s2=0; int i;for(i=0;i0) s1+=x;else s2+=x; printf(s1=%d,s2=%
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年宣城市宣州区街道办人员招聘笔试模拟试题及答案详解
- 2026年黑龙江省黑河市中小学教师招聘笔试备考试题及答案详解
- 2026年乌鲁木齐市新市区街道办人员招聘考试备考题库及答案详解
- 2025年江西省吉安市中小学教师招聘考试试题及答案详解
- 2026辽宁盘锦市大洼区人民医院招聘合同制工作人员49人考试备考试题及答案详解
- 2026年山东省枣庄市街道办人员招聘笔试参考题库及答案详解
- 2026安徽安庆市安汇新能源科技有限公司招聘劳务派遣人员考试(项目建设部市场推广工程师)笔试模拟试题及答案详解
- 2026年常德市武陵区中小学教师招聘笔试参考题库及答案详解
- 2026年江西省抚州市街道办人员招聘考试参考试题及答案详解
- 跨境电算协同中算力负载跨国柔性迁移碳排放双重核算避免-基于国际碳排放双重核算避免协议与算力绿电碳核算互认机制规范分析
- 2026年重庆市“五方面人员”选拔乡镇领导班子考试历年参考题库(含完整答案)
- 家政保姆入户服务标准化礼仪规范
- 2026秋新教科版科学五年级上册教学课件:第四单元 第5课 岩石的类别与变化 有2个微课视频
- 2026年浙江基层法律服务工作者执业核准考试试题及答案
- 2026年幼儿园课程故事培训会
- 2025年全国检察官遴选考试真题及参考答案
- 2026年中国石油辽阳石化分公司校园招聘笔试参考试题及答案解析
- 2026年新水利安全员b证考试试题及答案
- 二年级上册数学【应用题乘法】80题(含答案)
- 2026年全国中考语文试题汇编-议论文阅读及答案
- 冶金安全评价标准考试试题及答案
评论
0/150
提交评论