版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精选优质文档-----倾情为你奉上精选优质文档-----倾情为你奉上专心---专注---专业专心---专注---专业精选优质文档-----倾情为你奉上专心---专注---专业C语言程序设计期末考试复习题选择题在每个C程序中都必须包含有这样一个函数,该函数的函数名为
A
。A.main
B.MAIN
C.name
D.function在以下关于C语言的注释的叙述中,不正确的是C。A.注释可用"/*"、"*/"形式表示,也可用"//"形式表示B.编译器在编译一个程序时,将跳过注释,不对其进行处理C.编译器在编译一个程序时,可发现注释中的单词拼写错误D.程序中注释的多少不会影响所生成的可执行文件的长度以下叙述不正确的是C。A.在C程序中,严格区分大小写字母B.一个C源程序有且仅有一个main函数C.在C程序中,注释只能位于一条语句的后面D.一个C程序总是从main函数开始执行下列合法的标识符为DA.abde+B.#KDJFC.67KDJD.DK3_关于字符串和字符的关系正确的是C“A”与’A’是相同的字符串是常量,字符是变量“A”与’A’是不同的“A”与“A”是相同的下面关于语句的说法正确的是B下面这两段程序的执行效果是一致的if(x>y)if(x>y){z=x;s=z*z;}else{z=y;s=1/(z*z);}if(x>y)z=x;s=z*z;elsez=y;s=1/(z*z);空语句是只有一个分号的语句,它其实什么也不干语句的构成不一定需要分号语句的书写对程序的运行不起作用,因此可以随便写都可以以下各标识符中,合法的用户标识符组为D。PAd,P#d,b-b,abc,_0123,ssipedcin,a10,CPP,float,del_word,signedvoid,max,hiy,<fr>,list,*jera,temp,_isw,INT,keep,wind字符串“\”EOF=-\61\””的长度是B。A.8B.9C.12D.非法字符串数学式在C程序中对应的不正确的表达式为B。A.sqrt(sin(x)>0?sin(x):-sin(x))B.sqrt(fabs(sinx))C.sqrt(sqrt(sinx*sinx))D.fabs(sqrt(sin(x)))下列A是C语言的有效标识符?A._No1 B.No.1C.12345 D.int11.以下叙述中正确的是(B)。A.a是实型变量,C允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。B.在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。C.执行语句a=b;后,在内存中a和b变量中原有的值都将被改变。D.已有a=3,b=5。当执行了表达式a=b,b=a之后,可使a中的值为5,b中的值为3。12.构成C语言源程序的基本单位是(D)。A.子程序B.过程C.文本D.函数13.以下叙述正确的是(D)。A.do_while语句构成的循环不能用其它语句构成的循环来代替。B.do_while语句构成的循环只能用break语句退出。C.用do_while语句构成循环时,当while后的表达式为非零时结束循环。D.用do_while语句构成循环时,当在while后的表达式为零时结束循环。14.以下能正确进行字符串赋值的是(A)。A.chars[5]={‘a’,’e’,’i’,’o’,’u’};B.char*s;s=“good!”;C.chars[5]=“good!”;D.chars[5];s=“good”;15.以下函数调用语句中,含有的实参个数是(D)。A.1B.2C.4D.5func((exp1,exp2),(exp3,exp4,exp5));16.若已定义:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,则对a数组元素的引用不正确的是(D)。A.a[p-a]B.*(&a[i])C.p[i]D.*(*(a+i))17.对于for(表达式1;表达式2;表达式3)语句,下列说法不正确的是(D)。A.表达式1只能执行一次B.表达式1、表达式2、表达式3都可以缺省C.缺省表达式2时循环执行无限次D.只有循环次数确定的情况下才能用for循环18.对于函数的形参数和实参数,下列说法正确的是(C)。A.函数调用时,实参数和形参数之间相互进行值传递B.实参数个数和形参数的个数可以不相等C.形参只能是变量D.实参只能是变量19.下列说法正确的是(C)。A.指针变量专门用来存放另外一个变量的地址B.定义指针时,其类型为整型C.可以把一个整数直接赋给指针变量D.指针与指针变量是同一概念20.对于输入语句scanf(“%d%c”,&a,&x);为了使a=10,x=’A’,正确的输入格式是(C)。A.10AB.10,AC.10AD.10;A21.以下叙述中正确的是(B)。A.a是实型变量,C允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。B.在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。C.执行语句a=b;后,在内存中a和b变量中原有的值都将被改变。D.已有a=3,b=5。当执行了表达式a=b,b=a之后,可使a中的值为5,b中的值为3。22.构成C语言源程序的基本单位是(D)。A.子程序B.过程C.文本D.函数23.以下叙述正确的是(D)。A.do_while语句构成的循环不能用其它语句构成的循环来代替。B.do_while语句构成的循环只能用break语句退出。C.用do_while语句构成循环时,当while后的表达式为非零时结束循环。D.用do_while语句构成循环时,当在while后的表达式为零时结束循环。24.以下能正确进行字符串赋值的是(B)。A.chars[5]={‘a’,’e’,’i’,’o’,’u’};B.char*s;s=“good!”;C.chars[5]=“good!”;D.chars[5];s=“good”;25.以下函数调用语句中,含有的实参个数是(B)。A.1B.2C.4D.5func((exp1,exp2),(exp3,exp4,exp5));26.若已定义:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,则对a数组元素的引用不正确的是(D)。A.a[p-a]B.*(&a[i])C.p[i]D.*(*(a+i))27.对于for(表达式1;表达式2;表达式3)语句,下列说法不正确的是(D)。A.表达式1只能执行一次B.表达式1、表达式2、表达式3都可以缺省C.缺省表达式2时循环执行无限次D.只有循环次数确定的情况下才能用for循环28.对于函数的形参数和实参数,下列说法正确的是(C)。A.函数调用时,实参数和形参数之间相互进行值传递B.实参数个数和形参数的个数可以不相等C.形参只能是变量D.实参只能是变量29.下列说法正确的是(C)。A.指针变量专门用来存放另外一个变量的地址B.定义指针时,其类型为整型C.可以把一个整数直接赋给指针变量D.指针与指针变量是同一概念30.对于输入语句scanf(“%d%c”,&a,&x);为了使a=10,x=’A’,正确的输入格式是(C)。A.10AB.10,AC.10AD.10;A二、填空题1.C语言程序由函数组成,其中每一个程序必须含有一个main函数。2.一个算法应包含有限的操作步骤,这是指算法的有穷性。3.以下程序段执行后z的值是。intx,y,z;x=1;y=2;z=1/y*x;4.请填入一个整数使以下程序段输出10个整数。for(i=0;i<=9;printf(“%d\n”,i+=2));5.静态型变量在函数调用结束后不消失而继续保留原值,而且只能被初始化一次。6.以下程序段给数组所有元素输入数据,请补充完整。main(){inta[10],i=0;while(i<10)scanf(“%d”,&a[i]);}7.函数直接或间接调用其本身称为函数的递归调用。8.C语言的变量分全局变量和局部变量,在函数外定义的变量是全局变量。9.为表示关系x≥y≥z,应使用的C语言表达式是(x>=y)&&(y>=z)。10.C语言的函数一般由两部分组成,分别是声明部分和执行部分。11.以下程序段给数组所有元素输入数据,请补充完整。main(){inta[10],i=0;while(i<10)scanf(“%d”,);}12.函数直接或间接调用其本身称为函数的递归调用。13.C语言的变量分全局变量和局部变量,在函数外定义的变量是全局变量。14.为表示关系x≥y≥z,应使用的C语言表达式是(x>=y)&&(y>=z)。15.C语言的函数一般由两部分组成,分别是声明部分和执行部分。三、程序改错题1.以下程序代码是求n!。#include<stdio.h>main(){inti,s,n;scanf(“%d”,n);->scanf(“%d”,&n);for(s=0,i=1;i<=n;i++)->for(s=1,i=1;i<=n;i++)s*=i;printf(“%d\n”,s);}2.以下程序是求整型数组中的最大值。#include<stdio.h>main(){inta[10]={4,6,78,45,2,1,0,8,12,24},max,i;for(max=a[0],i=1;i<=10;i++)->for(max=a[0],i=1;i<=9;i++)if(a[i]<max)->if(a[i]>max)max=a[i];printf(“max=%d\n”,max);}3.以下程序实现的功能是:交换主函数中的变量a和b的值。#include<stdio.h>voidfun(int*p1,int*p2){int*p3;->p3p3=p1;p1=p2;p2=p3;}->p3=*p1;*p1=*p2;*p2=p3;}main(){inta=10,b=5;fun(&a,&b);printf(“a=%d,b=%d\n”,a,b);}}->}4.以下程序是判断x是否是素数,若是就输出“YES”,否则输出“NO”。#include<stdio.h>main(){intx,flag,i;scanf(“%d”,x);->scanf("%d",&x);for(flag=1,i=1;i<=x-1;i++)->for(flag=1,i=2;i<=x-1;i++)if(x/i==0){flag=0;break;}->if(x%i==0){flag=0;break;}if(flag==1)printf(“YES”);elseprintf(“NO”);}5.下列程序是采用折半查找算法在a数组中查找x,若找到x则显示“成功”,否则显示“失败”。#include<stdio.h>main(){inta[15]={100,89,80,76,64,56,45,41,32,30,24,22,15,10,6};inti,j,mid,x;scanf(“%d”,&x);i=0;j=14;while(i<=14){mid=(i+j)/2;if(a[mid]==x)break;elseif(a[mid]>x)j=mid-1;->i=mid+1;elsei=mid+1;}->elsej=mid-1;}if(i>j)printf(“查找失败\n”);elseprintf(“查找成功\n”);}6.以下程序的功能是将一个矩阵转置。#include<stdio.h>main(){inta[4][4]={4,3,2,1,8,7,6,5,12,11,10,9,13,14,15,16},i,j,k;for(i=0;i<=3;i++)for(j=0;j<=3;j++)->for(j=i;j<=3;j++){k=a[i][j];a[i][j]=a[j][i];a[j][i]=k;}加}7.以下程序是判断x是否是素数,若是就输出“YES”,否则输出“NO”。#include<stdio.h>main(){intx,flag,i;scanf(“%d”,x);for(flag=1,i=1;i<=x-1;i++)if(x/i==0){flag=0;break;}if(flag==1)printf(“YES”);elseprintf(“NO”);}8.下列程序是采用折半查找算法在a数组中查找x,若找到x则显示“成功”,否则显示“失败”。#include<stdio.h>main(){inta[15]={100,89,80,76,64,56,45,41,32,30,24,22,15,10,6};inti,j,mid,x;scanf(“%d”,&x);i=0;j=14;while(i<=14){mid=(i+j)/2;if(a[mid]==x)break;elseif(a[mid]>x)j=mid-1;elsei=mid+1;}if(i>j)printf(“查找失败\n”);elseprintf(“查找成功\n”);}9.以下程序的功能是将一个矩阵转置。#include<stdio.h>main(){inta[4][4]={4,3,2,1,8,7,6,5,12,11,10,9,13,14,15,16},i,j,k;for(i=0;i<=3;i++)for(j=0;j<=3;j++){k=a[i][j];a[i][j]=a[j][i];a[j][i]=k;}四、程序分析题1.以下程序段的输出结果是97531。inta[10]={9,8,7,6,5,4,3,2,1,0},*p;for(p=a;p<=a+9;p+=2)printf(“%d”,*p);2.以下程序的输出结果是61515。intt=1;intfun(intp){staticintt=5;t+=p;printf("%d",t);return(t);}main(){inta=3;printf("%d\n",fun(a+fun(t)));}3.以下程序的输出结果是-5,-12,-7。voidsub(intx,inty,int*z){*z=y-x;}main(){inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf(“%d,%d,%d\n”,a,b,c);}4.以下程序段的输出结果是15。main(){inta[]={1,2,3,4,5,6,7,8,9,10},b=9,i;for(i=0;i<3;i++)b+=a[i];printf("%d\n",b);}5.以下程序段的输出结果是16。intfun(intn){if(n==1)return1;elsereturnn+fun(n-2);}main(){printf("%d\n",fun(7));}6.以下程序段的输出结果是1。intx=0;if(x++<0)printf(“%d”,--x);printf(“%d”,x++);7.以下程序段的输出结果是10。intk,j,s;for(k=2;k<6;k++,k++)for(s=1,j=k;j<6;j++)s+=j;printf(“%d\n”,s);8.以下程序的输出结果是25/10=2。intf(intm,intn){returnn/m;}main(){inta=10,b=25,c;c=f(a,b);printf("%d/%d=%d",b,a,c);}9.以下程序的运行结果是**。main(){intx=1,y=1;switch(x){case1:switch(y){case0:printf(“*”);break;case1:printf(“*”);break;default:printf(“*”);break;}case2:printf(“*”);}}10.以下程序的输出结果是a=22。intfun(){staticinti=2;ints=1;s+=i;i++;returns;}main(){inti,a=10;for(i=2;i<5;i++)a+=fun();printf("a=%d\n",a);}11.以下程序段的输出结果是97531。inta[10]={9,8,7,6,5,4,3,2,1,0},*p;for(p=a;p<=a+9;p+=2)printf(“%d”,*p);12.以下程序的输出结果是61515。intt=1;intfun(intp){staticintt=5;t+=p;printf("%d",t);return(t);}main(){inta=3;printf("%d\n",fun(a+fun(t)));}13.以下程序的输出结果是-5,-12,-7。voidsub(intx,inty,int*z){*z=y-x;}main(){inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf(“%d,%d,%d\n”,a,b,c);}14.以下程序段的输出结果是15。main(){inta[]={1,2,3,4,5,6,7,8,9,10},b=9,i;for(i=0;i<3;i++)b+=a[i];printf("%d\n",b);}15.以下程序段的输出结果是16。intfun(intn){if(n==1)return1;elsereturnn+fun(n-2);}main(){printf("%d\n",fun(7));}五、编程题1.编程求:S=1/1-1/3+1/5-1/7+…+1/99的值。#include<stdio.h>main(){ inti=1;floata=0,f=1.0;while(i<100) { a=a+f/i; i+=2;f=-f;}printf("%f\n",a);}2.若给定数组a[12]={15,6,22,34,1,64,52,7,12,32,24,45},请编程对它们进行降序排序并输出。#include<stdio.h>voidmain(void){inta[12]={15,6,22,34,1,64,52,7,12,32,24,45},i,j,l,temp;for(i=0;i<12;i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学语文课堂中的古诗词教学反思
- 2025年北师大新版八年级化学上册月考试卷
- 2025年鲁科版高一物理上册月考试卷含答案
- 2025年鲁教版八年级科学下册月考试卷
- 2025年新世纪版八年级化学上册阶段测试试卷
- 导热仪激光法安全操作规程
- 2024版设备租赁合同格式
- 2025年度绿色建筑施工合同环保标准执行细则3篇
- 2024车辆所有权转让协议书3篇
- 2025年冀少新版六年级语文下册阶段测试试卷含答案
- (正式版)JBT 7248-2024 阀门用低温钢铸件技术规范
- 胆总管结石伴胆管炎的护理查房
- 水闸闸门运行方案
- 消费型股东招募计划书
- 二年级上册竖式计算200题附答案
- 统编版三年级语文下册 第五单元 大单元教学设计
- 申请拘留被执行人的文件
- 国网企业文化
- 钢结构加固教学课件
- 防止交叉感染的护理措施和策略
- 皮带输送机安全培训
评论
0/150
提交评论