c语言考试复习题.ppt_第1页
c语言考试复习题.ppt_第2页
c语言考试复习题.ppt_第3页
c语言考试复习题.ppt_第4页
c语言考试复习题.ppt_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,程序设计复习题,、单选题(每小题1分,共20分。请将结果填入答题纸指定表格中) 1“算法”是计算机处理问题过程的准确描述,描述的方法有伪代码、( )等。 A. 分支树 B网络图 C. 语法结构图 D流程图 2下列数据属于“字符串常量”的是( )。 Aabc B“abc“ C. abc D. a 3执行语句for(i=1;i+4;);后,循环变量i的值是( )。 A3 B4 C5 D1 4. 下面关于变量可见性和存在性的描述,正确的是( )。 A. 一个变量是可见的,则它定是存在的 B一个变量是存在的,则它定是可见的 C主函数中定义的变量比子函数中定义的变量作用域大 D函数内定义的静态变量比函数内定义的动态变量作用域大 5设有C语句int(*ptr)();,则( )。 Aptr是指向函数的指针,该函数返回int型数据 Bptr是指向整型数据的指针变量 Cptr是一个函数名,该函数返回值是指向整型数据的指针 Dptr没有什么意义,2,程序设计复习题,6若要用fopen函数打开一个新的二进制文件,对该文件进行写操作,则文件(操作)方式字符串应是( )。 A“ab+“ B. “wb“ C. “rb+“ D.“ab+“ 7. 设有定义语句char *ptr,a;则以下语句正确的是( )。 Aa=ptr Bptr=ptr/2 Cptr=&a Dptr=20 8C语言中规定,函数隐含的存储类型是( )。 Aauto Bstatic Cextern D无存储类别 9C语句while(!e);中的表达式,e功能上等价于( )。 Ae=O Be!=1 C. e!=0 De=l 10设有变量定义int a,b;,则表达式(a=2,b=5,b-,+a+b)的值是( )。 A8 B5 C. 6 D7 11为了表示关系xyz,应该使用的C语言表达式是( )。 A(x=y)AND(x=z) B. (x=y)|(y=z) C(x=y=z) D. (x=y)&(y=z) 12. C语言中,所谓指针值就是指变量的( )。 A值 B类型 C地址 D. 占内存的字节数 13. C语言中,要存储字符串“Hello world!“,需要( )个字节的存储空间。 A12 B13 C6 D24,3,程序设计复习题,14. 设有定义语句struct recordint a,float brec,*p=,则对表达式c2-c1的描述正确的是( )。 A有语法错误 B无意义 C. 值为2 D值为-2,4,18. 设p1和p2是指向同一整型一维数组的指针变量,k为int型变量,则不能正确执行的语句是( )。 A. k=*pl+*p2; Bp2=k; C. pl=p2; D. k=*p1*(*p2); 19以下程序段执行后输出的结果是( )。 int a,k=4,m=6,*p1=,程序设计复习题,5,程序设计复习题,二、程序填空题(每空2分,共20分。请将结果填入答题纸指定位置) 1. 下面程序的功能是:输入个百分计分制成绩,则输出相应的五级计分制成绩等级;如果输入数据错误,则显示“data error”,请填空完成该程序。 #include void main( ) int grade; printf(“input the grade:“); scanf(“%d“,&grade); switch( ) case 0: case 1: case 2: case 3: case 4:,case 5: printf(“不及格n“);break; case 6: printf(“及格n“);break; case 7: printf(“中等n“);break; case 8: printf(“良好n“);break; case 9: case 10: printf(“优秀n“); break; : printf(“data errorn“); ,grade/10,default,6,程序设计复习题,2. 下面程序的功能是:从键盘输入n值,求n绝对值的各位数字之和;请填空完成该程序。 #include void main( ) int n , x , s=0; scanf(“ “,&n); x=abs(n); do s+= ; x/=10; while(x); printf(“sum=%dn“,s); ,%d,x%10,7,程序设计复习题,3. 下面程序的功能是:求数组a34所有元素中的最大值;请填空完成该程序。 #include void main( ) int max_value(int v ,int row ,int col); int a34=l,3,5,7,2,4,6,8,15,17,34,12); printf(“Max Value is:%dn“,max_value( ,3,4); int max_value(int v ,int row, int col) int i,j,max; max=v0; for(i=0;imax) max=vi*col+j; return max; ,a0,i*col+j,8,程序设计复习题,4. 下面程序的功能是:将从键盘上输入的字符数据依次存入文本文件mydata中,当遇到输入字符为#时输入流结束。请填空完成该程序 #include #include void main() FILE *fp; Char Ch: if(fP=fopen(“mydata“,“ “)= =NULL) printf(“Cant create file mydata.n“); return; printf(“input a String:n“); do ch=getchar(); fputc( ); while(ch!=#); fclose(fp); ,w,ch,fp,9,程序设计复习题,5. 下面C函数的功能是:计算两个正整数a与b的最大公约数;请填空完成该函数。 int GCD(int a, int b) int r; while(b!=0) ; a=b; b=r; ; ,r=a%b,return a,10,程序设计复习题,三、程序阅读题(每小题5分,共30分。请将结果写在答题纸指定位置) 1. 写出下面程序执行后的输出结果。 #include void f(int x, int y) int t; t=x,x=y,y=t; void s(int *x,int *y) int t; t=*x,*x=*y,*y=t; void main( ) int a=l0 ,b=20; f(a,b); printf(“a=%d,b=%dn“,a,b); s( ,a=10,b=20,a=20,b=10,11,程序设计复习题,2写出下面程序运行后文件data.txt中的内容。 #include void main() void writefile(char *filename,int k); int i; for(i=0;i5;i+) writefile(“data.txt“, i+1); void writefile(char *filename,int k) FILE *fp; fp=fopen(filename,“a“); fprintf(fp,“%d“,k); fclose(fp); ,12345,12,程序设计复习题,3写出下面函数在调用语句为f(3);时的输出结果。 void f(int m) int i,j; for(i=0;i=0;j-) printf(“%ld%c“,i+j,j?*:#); printf(“n“); ,2*1*0#3*2*1#4*3*2#,13,程序设计复习题,4写出下面程序执行后的输出结果。 #include #include struct point double x; double y; ; void main() struct point p1,p2,p3; p1.x=3,p1.y=7; p2=pl; p1.x=5,p1.y=3; p3.x=(p1.x+p2.x)/2.0; p3.y=(p1.y+p2.y)/2.0; printf(“%.2f,%.2fn“,p3.x,p3.y); ,4.00,5.00,14,程序设计复习题,5写出下面程序执行后的输出结果。 #include int f(int n) static int s=0; s+=n; return s; void main() int k,t; k=f(2); t=f(3); printf(“%d,%dn“,k,t); ,2,5,15,程序设计复习题,6写出下面程序执行后的输出结果。 #include void main(void) int i,t0,t1,t2; t0=tl=t2=0; for(i=1;i=10;i+) switch(i%3) case 0:t0+; case 1:t1+;break; default:t2+; printf(“t0=%d,t1=%d,t2=%dn“,t0,t1,t2); ,t0=3,t1=7,t2=3,16,程序设计复习题,四、算法描述题(每小题10分,共10分。请将结果写在答题纸指定位置) 1一个正整数与3的和是5的倍数,与3的差是6的倍数;请设计求符合此条件最小正整数的算法。,17,程序设计复习题,五、程序设计题(每小题10分,共20分) 1“角谷猜想”又称为“3X+l”猜想,其含义是指对于任意的一个正整数,如果它是奇数,则对它乘3再加1;如果它是偶数,则对它除以2;如此循环,最终都能够得到l。例如,对于正整数5有变化过程:5168421,请编程序验证:“角谷猜想”(输入一正整数,计算经过多少次迭代才能够得到1)。,18,程序设计复习题,#include void main() int n,count=0; printf(“Please enter number:“); scanf(“%d“, /*n不等于1则继续以上过程*/ ,19,程序设计复习题,2设已有原型为:void sort ( int *p, int n); 的函数sort,其功能是对长度为n的数组p中元素按升序排序。请编制C程序,利用函数sort将一个长度为20、元素值随机产生的一维数组按升序排序后写入文件data.dat中。 (提示:只需要写出C程序的主函数即可),#include #include #include #define N 20 void sort(int *p,int n); void

温馨提示

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

评论

0/150

提交评论