




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
c语言程序设计模拟试题A答案专业 班级 学号 姓名 题号一二三四五六七八总分得分 一、 单选题(15分)1、若有定义:int a=8, b=5, c; 执行语句c = a/b+0.4;后,c的值为( B )。 A) 1.4 B) 1 C) 2.0 D) 22、以下程序中,while 循环的次数是( B )。 #include void main(void) int i = 0;while (i10) if (i1) continue;if (i=5) break;i+; A) 1 B) 死循环,不能确定次数 C) 6 D) 103、以下程序的输出结果是( A )。 #include void main(void) int a = 0, i;for (i=1; i5; i+) switch (i) case 0: case 3: a += 2; case 1: case 2: a += 3; default: a += 5; printf(“%dn”, a); A) 31 B) 13 C) 10 D) 204、执行以下程序段后的输出结果是( C )。 int x = 5; int m, n; n = (+x) + (+x); m = (x-) + (x-); printf(“%d %dn”, m, n); A) 14 10 B) 13 13 C) 14 14 D) 14 125、执行以下程序后的输出结果是( C ) #include void main(void) int i = 0, j = 0, a = 6;if (+i0)|(+j0) a +;printf(“i=%d, j=%d, a=%dn”, i, j, a); A) i=0, j=0, a=6 B) i=1, j=1, a=7 C) i=1, j=0, a=7 D) i=0, j=1, a=76、执行以下程序后的输出结果是( D ) #include void main(void) char a=”abc0abc”;printf(“%s”, a); A) abc0abc B) abc C) abc0 D) abc7、以下程序的输出结果是( C ) #include void main(void) int a = 1, b = 2, c = 3;printf(“%d”, cba); A) 2 B) 1 C) 0 D) 38、执行以下程序后,a的值为( D )。 int *p, a = 10, b=1; p = &a; a = *p + b; A) 12 B) 编译出错 C) 10 D) 119、以下正确的叙述是( C )。A) 在C语言中,main函数必须位于文件的开头B) C语言每行中只能写一条语句C) C语言本身没有输入、输出语句D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误10、以下各语句或语句组中,正确的操作是( C )。A) char s5=abcdeB) char *s; gets(s);C) char *s; s=abcde;D) char s5; scanf(%s, &s);11、设有以下说明语句,则下面的叙述中不正确的是( B )。struct ex int x ; float y; char z ; example;A) struct结构体类型的关键字 B) example是结构体类型名C) x,y,z都是结构体成员名 D) struct ex是结构体类型12、对以下程序段,while 循环执行的次数是( A )。int k=0while (k=1) k+;A) 无限次 B) 有语法错,不能执行 C) 一次也不执行 D) 执行1次13、若已定义:int a9,*p=a;并在以后的语句中未改变p的值,则不能表示a1 地址的表达式是( C )。A) p+1 B) a+1 C) a+ D) +p14、函数调用:strcat(strcpy(str1,str2),str3)的功能是( C )。A) 将串str1复制到串str2中后再连接到串str3之后B) 将串str1连接到串str2之后再复制到串str3之后C) 将串str2复制到串str1中后再将串str3连接到串str1之后D) 将串str2连接到串str1之后再将串str1复制到串str3中15、在下列选项中,不正确的赋值语句是( D )。A) +t; B) n1=(n2=(n3=0); C) k=i=j; D) a=b+c=1;二、 程序填空(26分)1、求1!+2!+3!+。+10! #include void main(void) float s = 0, t = 1;int n;for (n=1; n=10 ; n+) t=t*n ; s=s+t ; printf(“1!+2!+3!+。+10!=%f”, s); 2、以下程序是用来统计从键盘输入的一个正整数中各位数字中零的个数,并求各位数字中最大者。例如:1080其零的个数是2,各位数字中最大者是8。#include void main(void) unsigned long num, max, t; int count; count=max=0; scanf(%ld, &num); do t= num%10 ; if(t=0) +count; else if(maxt) max=t ; num/=10; while(num); printf(count=%d,max=%ldn, count, max); 3、下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数。#include void main(void) int i, j;for(i=0; i=10 ; i+) j = i*10+6;if ( j%3!=0 ) continue;printf(%d,j);4、以下函数的功能是,把两个整数指针所指的存储单元中的内容进行交换。void exchange(int *x, int *y) int t;t=*y; *y = *x ; *x = t ;三、 阅读程序,写出程序的输出结果(24分)1、#include void main(void) char *s, *s1 = “here is”, *s2 = “key”;s = s1;while (*s1!=0) s1+;while (*s1+=*s2+);s2 = s;while (*s2!=0) s2+;printf(“%dn”, s2-s); 102、#include void main(void) static int a = 1, 3, 5, 7; int *p3 = a+2, a+1, a; int *q = p; printf(“%dn”, *(p0+1) + *(q+2);83、#include void main(void) int num,c; printf(请输入一个整数:); scanf(%d,&num); do c=num%10; printf(%d,c); while(num/=10)0); printf(n);35-534、#include #include fut(int *s, int p23) *s=p11;void main(void) int a23 = 1,3,5,7,9,11, *p;p = (int *) malloc(sizeof(int);fut(&p,a);printf(%dn,*p);9四、 编程(35分)(1)sum=2+5+8+11+14-,输入正整数n,求sum的前n项和。(2)求1100间的素数(素数1,且除了1和自身外,不能被任何其它整数整除。(3)使用指针数组对输入输入的3个整数序列(每个序列5个整数)进行排序,排序方法不限。(10) 有15个数存放在一个数组中,输入一个数,用折半查找法找出该数是数组中第几个元素。若该数不在数组中,则打印出“No found”。c语言程序设计模拟试题B专业 班级 学号 姓名 题号一二三四五六七八总分得分 五、 单选题(15分)1、以下程序的输出结果是( C )。 #include void main(void) int a = 5, b = 4, c = 6, d; printf(“%dn”, d=ab?(ac?a: c): b); A) 5 B) 4 C) 6 D) 不确定2、以下程序的输出结果是( A )。 void main(void) int a = 4, b = 5, c = 0, d; d = !a & !b | !c; printf(“%dn”, d); A) 1 B) 0 C) 非0的数 D) 13、以下程序的输出结果是( A )。 #include int f(void) static int i = 0; int s =1;s += i;i+;return (s); void main(void) int i, a = 0;for (i=0; i5; i+) a += f()printf(“%dn”, a); A) 15 B) 0 C) 非0的数 D) 14、执行以下程序段后的输出结果是( A )。 int x = 2, y = 3, z; z = (x+, y+); printf(“%d”, z); A) 3 B) 2 C) 5 D) 45、执行以下程序后的输出结果是( A )。 #include void main(void) int i = 010, j =10, a = 0x10;printf(“%d, %d, %dn”, i, j, a); A) 8, 10, 16 B) 8, 10, 10 C) 10, 10, 10 D) 10, 10, 166、以下程序的输出结果是( D )。 #include void main(void) int a = 7; float x = 2.5,y = 4.7;printf(“%g”, x+a%3*(int)(x+y)%2/4); A) 0 B) 2.75 C) 2 D) 2.57、下列语句行中,哪些语句能正确进行字符串赋值操作( C )。 A) char st45 B) char s5=A, B, C, D, E C) char *s; s = “ABCDE”; D) char *s; scanf(“%s”, s); 8、以下程序的输出结果是( D )。 #include void main(void) char a = 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, *p = a+5;printf(“%d”, *-p); A) 非法 B) a4的地址 C) 3 D) 59、以下程序的运行结果是( C )。#include void main(void) int a43= 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12; int *p4, j; for (j=0; j4; j+) pj=aj; printf(%2d,%2d,%2d,%2dn, *p1, (*p)1, p32, *(p3+1);A) 4, 4, 9, 8B) 程序出错C) 4, 2,12,11D) 1, 1, 7, 510、以下C语言中,对函数不正确的描述是( D )。A) 当用数组名作形参时,形参数组改变可使实参数组随之改变B) 允许函数递归调用C) 函数形参的作用范围只是局限于所定义的函数内D) 函数说明必须在主调函数之前11、以下所列的各函数首部中,正确的是( C )。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)12、以下程序执行后sum的值是( C ) void main(void) int i , sum;for (i=1;i6;i+) sum+=i;printf(%dn,sum);A)15 B)14 C) 不确定 D)013、以下叙述中不正确的是( C )。A) 在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。B) 在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。C) 在C中,外部变量的隐含类别是自动存储类别。D) 在C中,函数形参可以说明为register变量。41、在C语言中,合法的字符常量是( B )。A) 084 B) x43 C) ab D) 015、以下函数调用语句中含有的实参个数是( B )。func(exp1,exp2),(exp3,exp4,exp5);A) 1 B) 2 C) 4 D) 5二、程序填空(26分)1、定义compare(char *s1, char *s2)函数,以实现比较两个字符串大小的功能。#include int compare(char *s1, char *s2) while(*s1&*s2& *s1=*s2 ) s1+; s2+ ; return *s1*s2?1:-1 ;void main(void) printf(%dn, compare(abCd, abc);2、函数fun的功能是:使字符串str按逆序存放。void fun (char str) char m; int i, j;for (i=0, j=strlen(str); i j/2 ; i+, j-) m = stri;stri = strj-1 ;strj-1 = m;printf(%sn,str);3、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。请填空。#include void main( void) float x1000,sum=0.0,ave,a;int n=0,i;printf(Enter mark:n);scanf(%f,&a);while (a=0.0& n1000) sum+ =a ; xn= a ;n+; scanf(%f,&a);ave= sum/n ;printf(Output:n);printf(ave=%fn,ave);for (i=0;in;i+)if ( xiave ) printf (%fn,xi);4、以下fun函数的功能是:累加数组元素中的值.n为数组中元素的个数, 累加的和值放入x所指的存储单元中。void fun(int b ,int n, int *x) int k, r=0;for (k=0; kn; k+) r = r+bk ; *x = r;六、 阅读程序,写出程序的输出结果(24分)1、#include void main(void) int x = 1; int x = 2; int x = 3; printf(“x= %dn”, x); printf(“x= %dn”, x); printf(“x= %dn”, x);x=3x=2x=12、#include void main(void) static char s = “china”, c; int i, j; for (i=0; i=1; j-) if (sjsj-1) c = sj; sj = sj-1; sj-1 = c; printf(“%sn”, s);字符串从小到大排序achin3、#include void f(int c) int a=0; static int b=0; a+; b+; printf(%d: a=%d, b=%dn, c, a, b);void main(void) int i; for (i=1; i=3; i+) f( i );1:1 12:1 23:1 34、#includestruct stu int num;char name10;int age;void fun(struct stu *p) printf(%sn,(*p).name); void main(void) struct stu students3= 9801,Zhang,20, 9802,Wang,19, 9803,Zhao,18 ; fun(students+2);Zhao四、编程(35分)(1)输入一个double 类型的数,使该数保留小数点后2位,且对第3位进行四舍五入处理。(2)编写函数strcopy(s, t),将字符串 s 复制到字符串 t 中。(3)求21000中的所有完数(某数因子和等于其本身的数称为完数。例:28的因子是1,2,4,7,14,且1+2+4+7+14=28,故28是完数。)c语言程序设计模拟试题C专业 班级 学号 姓名 题号一二三四五六七八总分得分 七、 单选题(15分)1、若变量a 是int 类型,并执行了语句a = A+1.6;后,则正确的叙述是( C )。 A) a的值是字符C B) a的值是浮点型 C) a的值是字符A的ASCII值加1 D) 不允许字符型和浮点型相加2、执行以下程序段后,变量y的值是( B )。 int x, y; x = 1; y = (+x*5); A) 5 B) 10 C) 15 D) 203、执行以下程序段后的输出结果是( B ) int x = 10; printf(“%d ”, +x); printf(“%d ”, x-); A) 11 10 B) 11 11 C) 10 11 D) 10 104、执行以下程序后的输出结果是( B ) #include void main(void) int x = 10;printf(“%d %d %dn”,+x, -x, -x+); A) 11 10 -10 B) 10 9 -10 C) 10 11 -11 D) 11 11 -105、下面正确的自定义标识符是( A ) A) a2b3 B) int C) int abc D) 2a3b6、以下程序的输出结果是( C ) #include void main(void) int a = 12, n = 5;printf(“%d”, a%2=(n%2); A) 01 B) 1 C) 0 D) 0x17、若有下列说明和语句:int a45, (*p)5; p = a; 则对a数组元素的正确引用是( D )。A) p+1 B) *(p+3) C) *(p+1)+3 D) *(*p+2)8、执行printf(%dn, strlen(anx41)语句,其输出结果是( D )。 A) 8 B) 7 C) 6 D) 49、若定义a2=1,2,3,4,5,6,7; 则a数组中行的大小是( C )。A) 2 B) 3 C) 4 D) 无确定值10、若fp为文件指针,且文件已正确打开,i为long型变量,以下程序段的输出结果是( B )。fseek(fp, 0, SEEK_END)i=ftell(fp);printf(i=%ldn, i);A) -1B) fp所指文件的长度,以字节为单位C) 0D) 211、当调用函数时,实参是一个数组名,则向函数传送的是( B )。A) 数组的长度 B) 数组的首地址C) 数组每一个元素的地址 D) 数组每个元素中的值12、若变量c为char类型,则能正确判断出c为小写字母的表达式是( D )。A) a=c= a)|(c= z)C) (a=c) D) (c= a)&(c= z)13、以下对C语言函数的有关描述中,正确的是( B )。A) 在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B) C函数既可以嵌套定义又可以递归调用C) 函数必须有返回值,否则不能使用函数D) C程序中有调用关系的所有函数必须放在同一个源程序文件中14、若有以下定义和语句,则输出结果是( D )int *pp,*p,a=10,b=20;pp=&p;p=&a;p=&b;printf(%d %dn,*p,*pp);A)10,20 B)10,10 C)20,10 D)20,2015、设有语句char a=72; 则变量a包含的字符个数是( A )。A)1 B)2 C)3 D)说明不合法八、 程序填空(26分)1、以下程序用来检查二维数组是否对称(即:对所有i,j都有aij=aji)。#include void main(void) int a44=1,2,3,4, 2,2,5,6, 3,5,3,7, 8,6,7,4; int i, j, found=0; for(j=0; j4; j+) for(i=0; i4; i+) if ( aij!=aji ) found= 1 ; break; if(found) break; if(found) printf(不对称n); else printf(对称n);2、下面程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其它元素不变。#include #include void main(void) char a=clanguage,t;int i, j, k;k = strlen(a);for (i=0; i=k-2; i+=2) for (j=i+2; jaj ) t=ai; ai=aj; aj=t; puts(a);printf(n);3、以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件文件中形成文本文件,并将字符的个数写到文件尾部。#include #include void main(void) FILE *fp;char ch,fname32; int count=0;printf(Input the filename :);scanf(%s,fname);if (fp=fopen( fname ,w+)=NULL) printf(Cant open file:%s n,fname); exit(0);printf(Enter data:n);while (ch=getchar()!=#) fputc(ch,fp); count+;fprintf( fp ,n%dn,count);fclose(fp);4、以下程序求a数组中的所有素数的和,函数isprime用来判断自变量是否为素数。素数是只能被1和本身整除且大于1的自然数。#include int isprime(int);void main(void) int i,a10,*p=a,sum=0;printf(Enter 10 num:n);for (i=0;i10;i + + ) scanf(%d,&ai);f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 自考专业(公共关系)考前冲刺练习试题及参考答案详解(基础题)
- 2024-2025学年度高级软考考前冲刺练习附参考答案详解(综合卷)
- 2025年上半年浙江温州市泰顺县事业单位招聘(第3号)考前自测高频考点模拟试题完整参考答案详解
- 钢结构材料施工质量管理方案
- 人防工程防护墙设计方案
- 起重设备安装工程施工协调计划
- 建筑预应力工程施工过程中质量改进
- 2025年度南宁市人力资源和社会保障局招募南宁市本级第一批笔试备考试题含答案详解(突破训练)
- 2025年东北农业大学人才招聘(58人)模拟试卷含答案详解(突破训练)
- 2025贵州职业技术学院单招《语文》每日一练试卷(满分必刷)附答案详解
- T/CECS 10187-2022无机复合聚苯不燃保温板
- 人教版高中物理必修三同步练习全套(含答案)
- 动物疫情监测与预警的数据分析与利用
- 2025变压器振动监测与故障诊断装置
- 工程对赌协议合同模板
- 格拉斯哥昏迷评分法详解(GCS)
- GB/T 45403-2025数字化供应链成熟度模型
- 盒饭采购合同协议
- QGDW11337-2023输变电工程工程量清单计价规范
- 小学昆虫知识科普单选题100道及答案
- 防性侵教师培训
评论
0/150
提交评论