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

加入VIP,免费下载
 

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

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言笔试练习题.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言笔试练习题.docx

1、c语言笔试练习题3.1综合练习题13.1.1 试题一、选择(1-30每题1分,31-45每题2分,共60分)1 . 在C语言中,如果下面的变量都是int类型,则输出的结果是()#includemain()int sum,pad;sum=pad=5;pad=sum+,pad+,+pad;printf(%dn,pad);A) 7B) 6C) 5D) 42 . 以下程序的输出结果是()#include main()int i=010,j=10;printf(%d,%dn,+i,j-);A)11,10B) 9,10C) 010,9D) 10,93 . 已知在ASC代码中,字母A的序号是65,以下程序的

2、输出的结果是()#includemain()char c1=A,c2=Y;printf(%d,%dn,c1,c2);A)因输出格式不合法,输出错误信息B)65,90C)A,YD)65,894 . 指针s所指字符串的长度为()char*s=NameAddressn;A) 19B) 15C) 18D) 说法不合法5 . 设有说明int(*ptr)m;其中的标识符ptr是()A)M个指向整型变量的指针B)指向M个整型变量的函数指针C)一个指向具有M个整型元素的一维数组的指针D)具有M个指针元素的一维指针数组,每个元素都只能指向整型量6 . 语句while(!E);中的条件!E等介于A) E= =0B

3、) E! =1C) E! =0D) E7 . 以下程序的输出结果是()includemain()ptrintf(%dn,NULL);A)不确定的(因变量无定义)B)0C)-1D)18 . 以下函数调用语句中含有()个实参。func(exp1,exp2), (exp3,exp4,exp5);A) 1B) 2C) 4D) 59 . 设有以下语句:char a=3,b=6,c;则c的二进制值是()A)00011011B)00010100C)00011100D)0001100010 . 下面的程序中()有错误(每行程序前面的数字是行号)。行号程序代码1include2main()34float a3=

4、0,0;5int i;6for(i=0;i3,i+) scanf(“%d”,&ai);7for(i=1;i3,i+) a0=a0+ai;8printf(“%fn”,a0);9A) 没有B) 第4行C) 第6行D) 第8行11 . 设有语句int a=3;则执行了语句a+=a-=a*a;后,变量a的值是()A) 3B) 0C) 9D) -1212 . 以下的for循环()for(x=0,y=0;(y!=123)&(x4);x+);A) 是无限循环)循环次数不定C)执行次)执行次13 . 设有语句char a=72;则变量a())包含有1个字符)包含有2个字符)包含有3个字符)说明不合法14 .

5、以下的程序的输出结果是()#include #include main() int a=1,b=4,c=2;float x=10.5,y=4.0;float z;z=(a+b)/c+sqrt(double)y)*1.2/c+x;printf(%fn,z);A) 14.00000B) 015.400000C) 13.700000D) 14.90000015 . sizeof(double)是()A) 一种函数调用B) 一个双精度型表达式C) 一个整型表达式D) 一个不合法的表达式16 . C语言中()A)不能使用do-while语句构成的循环B) do-while语句构成的循环必须用break语

6、句才能退出C) do-while语句构成的循环,当while语句的中表达式值为非零时结束循环D) do-while语句构成的循环,当while语句的中表达式值为零时结束循环17 . 以下的程序的输出结果是()#include #include main()char str12=s, t, r, i, n, g;printf(%dn,strlen(str);A) 6B) 7C) 11D) 1218 . 以下的程序的输出结果是()#include main()int a=2,c=5;printf(a=%d,b=%dn,a,c);A) a=%2,b=%5B) a=2,b=5C) a=%d,b=%dD

7、) a=%d,b=%d19 . 以下的程序的输出结果是()#include main()int a,b,d=241;a=d/100%9;b=(-1)&(-1);printf(%d,%dn,a,b);A) 6,1B) 2,1C) 6,0D) 2,020 . 以下的程序的输出结果是()#include main()int i;for(i=1;i=5;i+)if(i%2)printf(*);else continue;printf(#);printf($n);A) *#*#*#$B) #*#*#*$C) *#*#$D) #*#*$21 . 以下for语句构成的循环执行了()次。include def

8、ine N 2define M N+1define NUM(M+1)*M/2main() int i,n=0;for (i=1;i=NUM;i+);n+; printf(“%d”,n);printf(“n”);A) 5B) 6C) 8D) 922 . 设有以下语句,则()不是对a数组元素的正确引用,其中0i10。int a10=0,1,2,3,4,5,6,7,8,9,*p=a;A) ap-a B) *(&ai)C) piD) *(*(a+i)23 . 以下程序的输出结果是()#include #define N 6main()char cN;int i=0;for(;iN;ci=getchar

9、(),i+);for(i=0;iN;putchar(ci),i+);输入以下三行,每行输入都是在第一列上开始,代表一个回车符:abcdefA) abcdefB) aC) aD) abbbcdcdefcdef24 . 以下程序调用findmax函数求数组中最大元素在数组中的下标,请选择填空#include findmax (s,t,k)int *s, t, *k;int p;for(p=0,(*k=p);ps*k);main()int a10,i,k;for(i=0;i10;i+)scanf(%d,&ai);findmax (a,10,&k);printf(%d,%dn,k,ak);A) k=p

10、B) * k=p-sC) k=p-sD) *k=p25 . 有以下程序:#include union pwint i;char ch2;a;main()a.ch0=13;a.ch1=0; printf(%dn,a.i);程序的输出结果是()。(注意:ch 0在低字节,ch1在高字节。)A) 13B) 14C) 208D) 20926 . 有以下程序:#include main()int c;while(c=getchar()!=n)switch(c-2)case 0:case 1:putchar(c+4);case 2:putchar(c+4);break;case 3:putchar(c+3

11、);case 4:putchar(c+2);break;printf(n);从第一列开始输入以下数据,代表一个回车符。2743程序的输出结果是()。A) 66877B) 66866C) 667777D) 66886627 . 以下程序的输出结果是()。main()char *alpha6=ABCD,EFGH IJKL, MNOP, QRST, UVWX;char *p;int i;p=alpha;for(i=0;i4;i+)printf(%s,pi);printf(n);A) ABCDEFGHIJKLB) ABCDC) ABCDEFGHIJKLMNOPD) AEIM28 . 以下程序的输出结果

12、是()。#include #define FUDGE(y) 2.84+y#define PR(a) printf(%d,(int)(a)#define PRINT1(a) PR(a);putchar(n)main() int x=2; PRINT1 (FUDGE(5)*x);A) 11B) 12C) 13D) 1529 . 以下程序的输出结果是()。#include main()int i=1,j=3;printf(%d,i+);int i=0;i+=j*2;printf(%d,%d,i,j);printf(%d,%dn,i,j);A) 1,6,3,1,3B) 1,6,3,2,3C) 1,6,

13、3,6,3D) 1,7,3,2,330 . 以下程序的输出结果是()。#include main()int k=4,m=1,p;p=func(k,m);printf(%d,p);p=func(k,m);printf(%dn,p);func(int a,int b)static int m=0,i=2;i+=m+1;m=i+a+b;return(m);A) 8,17B) 8,16C) 8,20D) 8,831 . 设有以下语句:char str412=“aaa”,“bbbb”,“ccccc”,”dddddd”,*strp4;int ifor(i=0;i4;i+)strpi=stri;()不是对字

14、符串的正确引用,其中 knB)p-n+C) (*p).n+D) +p-n35 . 以下四个程序中,()不能对两个整型变量的值进行交换。A)#includeB) #includemain()main()int a=10,b=20;swap(&a,&b); int a=10,b=20;printf(%d%dn,a,b);swap(&a,&b);printf(%d%dn,a,b);swap(p,q)int*p,*q;swap(p,q)int *p,*q;int *t;t=(int)malloc(sizeof(int);int t;t=p;*p=*q;*q=*t;t=*p;*p=*q;*q=t;C)

15、#includeD) #includemain()main()int *a,*b;int a=10,b=20;a=10,b=20;int x=&a,y=&b;swap(a,b);swap(x,y);printf(%d%dn,*a,*b);printf(%d%dn,a,b);swap(p,q)swap(p,q)int*p,*q;int *p,*q;int t;int t;t=*p;*p=*q;*q=t;t=*p;*p=*q;*q=t;二、程序填空1 . 以下C语言程序将磁盘中的一个文件复制到另一个文件中,两个文件名在命令行中给出。#includemain(int argc,char *argv)

16、FILE*f1,*f2;char ch;if(argc)printf(Parameters missing!n);exit(0);if(f1=fopen(argv1,r)=NULL)|(f2=fopen(argv2,w)=NULL)printf(Can not open file!n);exit(0);while()fputc(fgetc(f1),f2);fclose(f1);fclose(f2);2 . 以下程序中的trap函数是一个用梯形法求定积分的通用函数。梯形法求定积分的公式为:s=(f(a)f(b)/2+f(a+i*h)*h,h=|-|i=1 n其中,n为积分小区间数。以下程序调用t

17、rap函数求定积分,被积函数是f(x)=x*x+3*x+2,且n=1000,a=0,b=4.#include#includedouble trap(double (*fun)(),double a,double b)double t,h;int i ,n =1000;t=0.5*(*fun)(a)+(*fun)(b);h=fabs(a-b)/(double)(n);for(i=1;i=n-1;i+)t=t+;t=t*h;return(t);double mypoly(double x)return(x*x+3.0*x+2.0);main()double y,(*pf)(); pf=;y=tra

18、p(pf,0.0,4.0);printf(%fn,y);3 . 以下程序求a数组中的所有素数的和,函数isprime用来判断自变量是否为素数。素数是只能被1和本身整除且大于1的自然数。#includemain()int i ,a10,*p=a,sum=0;printf(Enter 10 num:n);for(i=0;i10;i+)scanf(%d,&ai);for(i=0;i10;i+)if(isprime(*(p+)= =1)printf(%d,*(a+i);sum+=*(a+i);printf(n The sum=%dn,sum);isprime(x)intx;int i;for(i=2;

19、i=x/2;i+)if(x%i=0)return(0);else;4 . 以下程序调用invert函数按逆序重新放置a数组中元素的值。a数组中的值在main函数中读入。#include#define N 10invert(s,i,j)int *s,i,j;int t;if(ij)t=*(s+i);*(s+i)=*(s+j);*(s+j)=t;invert(s,j-1);main()int aN,i;for(i=0;iN;i+)scanf(%d,a+);invert(a,0,N-1);for(i=0;inext = =NULL#includestruct listint data;struct list*next;creatlist()struct list *p,*q,*ph;int a;ph=(struct list*)malloc(sizeof(struct list);p=q=ph;printf(Input an integer number,enter-1 to end:n);scanf

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1