收藏 分销(赏)

程序设计语言(C)复习题.doc

上传人:仙人****88 文档编号:8520046 上传时间:2025-02-16 格式:DOC 页数:10 大小:64KB
下载 相关 举报
程序设计语言(C)复习题.doc_第1页
第1页 / 共10页
程序设计语言(C)复习题.doc_第2页
第2页 / 共10页
程序设计语言(C)复习题.doc_第3页
第3页 / 共10页
程序设计语言(C)复习题.doc_第4页
第4页 / 共10页
程序设计语言(C)复习题.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、程序设计语言(C)复习题一. 单项选择题1. 以下四个常量中,正确的是(B )A) at B) 0xabc C) -0fff D) 01188(八进制数不能出现8的数字)2. 合法的浮点数是:(A )A) 160.0 B) 1.4e3.0 C) 521 D) .e53. 若a=3,b=2,c=1,表达式f=abc的值是:(D )A) true B) false C) 1 D) 04. 以下不正确的if语句形式是:(C )A) if (xy & x!=y);B) if (x=y) x+=y;C) if (x!=y) scanf(“%d”,&x) else scanf(“%d”,&y);D) if

2、 (xnum C) (*p) . num D) *p. num14. 若用fopen函数打开一个新的文本文件,该文件要既能读也能写,则文件打开方式字符串应是( B )A) “a+” B) “w+” C) “r+” D) “a” 15. 当调用函数fopen( )发生错误时,函数的返回值是:( B )A) 2 B) 0 C) 1 D) EOF16. 函数调用语句:fseek(fp,-20L,2);的含义是( C )A) 将文件位置指针移到距离文件头20个字节处B) 将文件位置指针从当前位置向后移20个字节C) 将文件位置指针从文件末尾处向后退20个字节D) 将文件位置指针移到当前位置20个字节处

3、17. 若定义:int a=101,*b=&a;, 则printf(%xn, b);的输出结果为( A )A) a的地址 B)b的地址 C)101 D)无确定值18. 执行下面程序中输出语句后,a的值是(B)main()int a;printf(%dn,(a=3*5,a*4,a+5); A) 65 B) 20 C) 15 D) 1019. .若有以下定义和语句(A)char *s1=12345,*s2=1234;printf(%dn,strlen(strcpy(s1,s2);则输出结果是(A)A)4 B)5 C)9 D)1020. 若下面函数调用是正确的,则它的实参个数是(B )func(e1

4、,e2),(e3,e4,e5), (e6,e7);A) 1 B) 3 C) 5 D) 7二. 填空题1. 数制转换:(384. 5)10( )8( )16 (f3d.4)16( )10( )22. 若ch为char型,ch=a+9-4的值是: f 。3. 若ch为int型,ch=D+7-4的值是: 71 4. 对嵌套if语句的规定是:else总是与上面最近未配对的if 配对。5. 若C程序中要调用一些标准数学库函数,文件开头应有预编译命令:#include 。6. 定义符号常量N的值为121: #define N 121 。7. 描述数学命题“1a10”的C语言逻辑表达式为:a=1 & ab)

5、 max=a;else max=b;改用条件运算符表示为: max=ab?a:b 。10. 使变量h和m的值分别为6和32,若键盘输入格式为:6-32 (回车)则scanf的写法是: scanf(“%d-%d”,&h,&m); 。11. 设a=3,b=4,x=3.5,y=2.5 算术表达式(float)a+b%2+(int)x/(int)y的值是:4.0 。12. C语言中逻辑“真”和“假”值分别用 1、0 表示。13. 数组名作函数的实参,传送的是数组的首地址。14. C语言中调用 fopen 函数打开文件,调用 close函数关闭文件。三. 程序阅读与程序设计1、下面程序的输出结果是(6,

6、0 )。main() int a=1,2,3,4,5,6,7,8,9,0,*p;p=a;printf(%d,%dn,*p+5, *(p+9));2、写结果。void fun(int *x, int *y) printf(%d %d, *x, *y); *x=8; *y=9;main() int x=1,y=2;fun(&y,&x);printf( %d %d,x, y);输出结果是:2 1 9 83、struct stud int no; struct stud *next; ;main() int i; struct stud st1,st2,st3,*st; st1.no=1; st1.n

7、ext=&st2; st2.no=2; st2.next=&st3; st3.no=3; st3.next=null; st=&st1; for(i=1;ino); st=st-next; 该程序执行后的输出结果为:1 2 34. 有以下程序:main() int i=1,j=2,k=3; if(i+=1&(+j=3|k+=3) printf(%d %d %dn,i,j,k); 程序运行后的输出结果是(2 3 3)5、写出下面程序的输出结果main()int i,j;for (i=5;i=1;i-)for (j=1;j=5-i;j+)printf(“%c”, ); /*单引号内为一个空格*/

8、for (j=1;j=2*i-1;j+)printf(“%c”,*); printf(“n”);运行结果: * * * * *6、写出下面程序的输出结果#include main()int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y)case 0:a+;break; case 1:b+;break; case 2:a+;b+;break;printf(a=%d,b=%dn,a,b);运行结果: a=2,b=1 7、写出下面程序的输出结果int a=10,b=20;int plus(int x,int y)int b=25;a+;b+;return(a+b+

9、x+y);main()printf(“a+b=%dn”,plus(a,b);printf(“a+b=%dn”,plus(a,b);运行结果:a+b=67a+b=698、写出下面程序的输出结果void r_n(int m)int q;q=m%10;m=m/10;printf(“%2d”,(q+1)%10);if (m!=0) r_n(m);main()int m;scanf(“%d”,&m);r_n(m);printf(“n”);输入7936 运行结果:7 4 0 89. main( ) char *str=“open”,”Edit”,”View”,”Help”; char *p; int k;

10、 p=str; for (k=0;k4;k+) printf(“%sn”,*(p+);OpenEdiViewHelp10、写出下面程序的输出结果main()int x5=2,4,6,8,10,*p,*pp; p=x;pp=&p; printf(“%d”,*(p+); printf(“%3dn”,*pp);运行结果: 2 411、以下函数返回a所指数组中最小的值所在的下标值。int fun(int *a,int n) int i,p;p=0;for(i=1;in;i+) if(aiap) p=i ; return(p);12、以下函数的功能是实现交换两个整型变量的值,并能把交换后的结果带到主调函

11、数。void swap(int *a,int *b)int temp;temp=*a;*a=*b;*b=temp;13、冒泡、选择排序算法。main()/*冒泡法例程*/int i,j,t;int a11;printf(Input 10 numbers:);for (i=1;i=10;i+) scanf(“%d”,&ai); ;printf(n);for (i=1;i=10-1;i+) for (j=1;jaj+1 ) t=aj; aj=aj+1 ;aj+1=t;printf(The sorted numbers is:n);for (i=1;i=10;i+) printf(“%d “,ai)

12、 ;printf(n);sort(int *a,int n) /*选择法例程*/int min,t;int i,j;for(i=0;in-1;i+) min=i;for(j=i+1;jaj) min=j;t=ai;ai=amin;amin=t;14、下列程序用来输出所有的“水仙花”数。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。main() int i,j,k,x; for(x=100;x=999;x+) i=x/100; j= x%100/10;/* 或j=(x-100*i)/10; */ k=x%10; if(x=i*i*i+j*j*j+k*k*k) printf(“%4

13、d”,x); 15、下列程序的功能是:求11/21/3.1/n的值。main( ) int i, n;float sum;scanf(%d, &n); sum=0; for(i=1 ;i=n ;i+)sum=sum+1.0/i;printf(%.3fn, sum);16、已知一个整型的数组a,有10个元素,分别为10,21,35,24,57,69,82,71,29,66;让用户输入一个整数x,查找该数是否在数组a中,若存在则输出所在的位置,不存在则输出信息“找不到”。 #includemain()int a=10,21,35,24,57,69,82,71,29,66,x,i;scanf(%d,

14、&x);for(i=0;i=10)printf(%d is not in the arrayn,x);elseprintf(%d is in the a%dn,x,i);17有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件stud中。#include stdio.h#include conio.hstruct student char num6; char name8; int score3; float avr;stu5;main() int i,j,sum; FILE *fp; /*inpu

15、t*/ for(i=0;i5;i+) printf(n please input No. %d score:n,i); printf(stuNo:); scanf(%s,stui.num); printf(name:); scanf(%s,stui.name); sum=0; for(j=0;j3;j+) printf(score %d.,j+1); scanf(%d,&stui.scorej); sum+=stui.scorej; stui.avr=sum/3.0; fp=fopen(stud,w); for(i=0;i5;i+) if(fwrite(&stui,sizeof(struct student),1,fp)!=1) printf(file write errorn); fclose(fp); getch();第 10 页 共 10 页

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服