C语言程序设计模拟试题3(附答案)

上传人:xt****7 文档编号:145135330 上传时间:2022-08-29 格式:DOC 页数:13 大小:51.50KB
收藏 版权申诉 举报 下载
C语言程序设计模拟试题3(附答案)_第1页
第1页 / 共13页
C语言程序设计模拟试题3(附答案)_第2页
第2页 / 共13页
C语言程序设计模拟试题3(附答案)_第3页
第3页 / 共13页
资源描述:

《C语言程序设计模拟试题3(附答案)》由会员分享,可在线阅读,更多相关《C语言程序设计模拟试题3(附答案)(13页珍藏版)》请在装配图网上搜索。

1、C语言程序设计模拟试卷三一、填空题。(每空2分,共16分)1在内存中,短整型变量占 字节,单精度实型变量占 字节,字符型变量占 字节。2一个C语言文件是由若干个 组成。3设有以下变量定义,并已赋确定的值char w; int x; float y; double z;则表达式:w*x+z-y所求得的数据类型为 。4若x为int类型,请以最简单的形式写出与逻辑表达式!x等价的C语言关系表达式 。5若有如下图所示五个连续的int类型的存储单元并赋值如下图,a0的地址小于a4的地址。p和s是基类型为int的指针变量。请对以下问题进行填空。 a0 a1 a2 a3 a42233445566(1)若p已

2、指向存储单元a1。通过指针p,给s赋值,使s指向最后一个存储单元a4的语句是 。(2)若指针s指向存储单元a2,p指向存储单元a0,表达式s-p的值是 。二、单项选择题。(每题2分,共40分)1设有 int x=11; 则表达式 (x+ * 1/3) 的值是( )。A) 3 B) 4 C) 11 D) 122下列程序的输出结果是( )。A) 3 B) 3.2 C) 0 D) 3.07main()double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf(“%d n”, d*y);3下列程序执行后的输出结果是(小数点后只写一位)( )。A) 6 6 6.0

3、 6.0 B) 6 6 6.7 6.7C) 6 6 6.0 6.7 D) 6 6 6.7 6.0main() double d; float f; long l; int i;i=f=l=d=20/3;printf(%d %ld %f %f n, i,l,f,d);scanf(%d,&d);4下列变量定义中合法的是( )。A) short _a=1-.le-1; B) double b=1+5e2.5;C) long do=0xfdaL; D) float 2_and=1-e-3;5设 int x=1, y=1; 表达式(!x|y-)的值是( )。A) 0 B) 1 C) 2 D) -16与

4、y=(x0?1:x0) y=1; B) if(x) else if(x0)y=1;else y=0; else if(x=0)if(x0)y=1; if(x0)y=1;else if(x=0)y=0; else y=-1; else y=-1;7以下循环体的执行次数是( )。A) 3 B) 2 C) 1 D) 0main() int i,j;for(i=0,j=1; i=j+1; i+=2, j-)printf(“%d n”,i);8以下叙述正确的是( )。A) do-while语句构成的循环不能用其它语句构成的循环来代替。B) do-while语句构成的循环只能用break语句退出。C) 用

5、do-while语句构成的循环,在while后的表达式为非零时结束循环。D) 用do-while语句构成的循环,在while后的表达式为零时结束循环。9下列程序执行后的输出结果是( )。A) G B) H C) I D) Jmain() int x=f; printf(“%c n”,A+(x-a+1); 10执行下面的程序段后,变量k中的值为( )。A) 不定值B) 33 C) 30 D) 10int k=3, s2;s0=k; k=s1*10;11若已定义: int a =0,1,2,3,4,5,6,7,8,9, *p=a, i;其中 0i9, 则对a数组元素不正确的引用是( )。A) ap

6、-a B) *(&ai) C) pi D) a1012下列程序执行后的输出结果是( )。A) 6 B) 7 C) 8 D) 9void func(int *a,int b) b0=*a+6; main() int a,b5;a=0; b0=3;func(&a,b); printf(“%d n”,b0);13下列程序的运行结果是( )。A) a=%2,b=%5 B) a=2,b=5C) a=d, b=d D) a=%d,b=%d#include main() int a=2,c=5;printf(“a=%d,b=%dn”,a,c); 14下列程序执行后的输出结果是( )。A) 3 B) 6 C)

7、 9 D) 随机数main() int a33, *p, i;p=&a00;for(i=0; i9; i+) pi=i+1;printf(“%d n”,a12);15设有数组定义: char array = “China”; 则数组 array所占的空间为( )。A) 4个字节B) 5个字节 C) 6个字节D) 7个字节16下列程序的输出结果是( )。A) 4 B) 6 C) 8 D) 10int b=2;int func(int *a) b += *a; return(b);main() int a=2, res=2;res += func(&a);printf(“%d n”,res);17

8、.有以下定义和语句 int a32=1,2,3,4,5,6,*p3; p0=a1; 则*(p0+1)所代表的数组元素是 ( ) A)a01 B)a10 C)a11 D)a1218下列程序的输出结果是( )。A) 5 B) 6 C) 7 D) 8struct abc int a, b, c; ;main() struct abc s2=1,2,3,4,5,6; int t; t=s0.a+s1.b;printf(“%d n”,t);19若有以下调用语句,则不正确的fun函数的首部是( )。A) void fun(int m, int x) B) void fun(int s, int h41)C

9、) void fun(int p, int *s) D) void fun(int n, int a)main() int a50,n;fun(n, &a9);20在C程序中,可把整型数以二进制形式存放到文件中的函数是( )。A) fprintf函数B) fread函数 C) fwrite函数 D) fputc函数三、修改下列程序:(在程序出错的语句下划横线并标号,把修改后的语句写在程序下面的横线上。)(每小题5分,共10分)1下列给定程序的功能是:读入一个整数(2=k10000),打印它的所有质因子(即所有为素数的因子)。例如,若输入整数2310,则应输出2、3、5、7、11。#includ

10、e #include * IsPrime(int n); int i,m; m=1; for ( i=2; in; i+) * if !(n%i) m=0; contitue; return (m); main() int j,k; clrscr(); printf(“nPlease enter an integer number between 2 and 10000:”);scanf(“%d”,k); printf(“nnThe prime factor(s) of %d is (are):”,k); for (j=2;j=k;j+) if ( (!(k%j)&(IsPrime(j) )

11、printf( %4d,j);getchar();) 2下列给定程序中,函数fun的功能是:逐个比较a、b两个字符串对应位置中的字符,把ASCII值大或等于的字符一次存放到c数组中,形成一个新的字符串。例如,若a中的字符串为aBCDeFgH,b中的字符串为:ABcd,则c中的字符串为:aBcdeFgh。#include #include * void; fun(char *p,char *q,char *c); * int k=1; * while(*p!=*q) if (*p*q) ck=*q; else ck=*p; if (*p) p+; if (*q) q+; k+; K=0;* ma

12、in() char a10=“aBCDeFgh”,b10=“ABcd”,c80=“”; fun(a,b,c); printf(“The string a:”); puts(a); printf(“The string b:”); puts (b); printf(“The result:”); puts(c); 四、阅读下列程序,在程序后面的横线上,写出该程序的功能或给出运行结果。(每小题4分,共16分)1. #include void main() char ch; int k=0; for(ch=A;chH;ch+,k+)if(k%2=0) printf(“%c”,ch); printf(

13、“n”); 输出结果: 2. #include void main( ) int k=0; char c=A; do switch (c+) case A: k+; break; case B: k-; case C: k+=2; break; case D: k=k%2; break; case E: k=k*10; break; default: k=k/3; k+; while(cG); printf(“k=%dn”, k); 输出结果: 3. #include void main() int a6=12,4,17,25,27,16,b6=27,13,4,25,23,16,i,j; fo

14、r(i=0;i6;i+) for(j=0;j6;j+) if(ai=bj)break; if(j6) printf(“%d ”,ai); printf(“n”); 输出结果: 4. #include void main() int a8=1,0,1,0,1,0,1,0,i; for(i=2;i8;i+) ai+=ai-1+ai-2; for(i=0;ib) t=a; ; b=t; printf(“The num small to big : %d %d”,a,b); 2输出购买总价值和数量。# define 30 main() ; num=10; total=num*PRICE;printf

15、(“total=%d, num=%dn”, );六、按要求编写下列程序。(每题6分,共12分)1输出下图。* * * * * * * *2编程判断输入的正整数是否既是5又是7的整数倍数。若是,则输出yes;否则输出no。C语言程序设计模拟试卷三 答案一、填空题。(每空2分,共16分)1 2 4 1 2 函数 3 double4x=0|x=15s=p+3 2 二、单项选择题。(每题2分,共40分)1A 2C 3A 4 A 5B6A 7C 8D 9 A 10 A11D 12A 13B 14 B 15C16B 17C 18B 19D 20. C三、修改下列程序:(在程序出错的语句下划横线并标号,把修

16、改后的语句写在程序下面的横线上。)(每小题5分,共10分)1IsPrime(int n) if (!(n%i) scanf(“%d”,&k); 2 void fun(char *p,char *q,char *c) k=0; while(*p|*q)四、阅读下列程序,在程序后面的横线上,写出该程序的功能或给出运行结果。(每小题4分,共16分)1. ACEG2. k=83.4 25 27 164. 1 0 2 2 5 7 13 20五、按给出的程序功能,在空格处,填写正确的程序语句,使程序完整。(每空1分,共6分)1 t“a=%f,b=%f”a=b2PRICEint num,totaltotal,num六、按要求编写下列程序。(每题6分,共12分)1main()int i,j;for(i=0;i=3;i+) for(j=0;j=i;j+) printf(* ); printf(n);getchar();2 main()int n;printf(请输入整数 n :);scanf(%d,&n); if(!(n%5)|!(n%7)printf(Yes!);else printf(No!);

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!