C语言程序设计第二阶段练习(江南大学)_第1页
C语言程序设计第二阶段练习(江南大学)_第2页
C语言程序设计第二阶段练习(江南大学)_第3页
C语言程序设计第二阶段练习(江南大学)_第4页
C语言程序设计第二阶段练习(江南大学)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

江南大学网络教育第二阶段练习题考试科目:《C语言程序设计》第章至第章(总分100分)学习中心(教学点)批次:层次:专业:学号:身份证号:姓名: 得分:一单选题(共20题,总分值40分,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。).下述对C语言字符数组的描述中错误的是(C)。 (2分)字符数组可以存放字符串字符数组的字符串可以整体输入、输出可以在赋值语句中通过赋值运算符"="对字符数组整体赋值不可以用关系运算符对字符数组中的字符串进行比较有以下程序voidf(intv,intw){intt;t=v;v=w;w=t;}main(){intx=1,y=3,z=2;if(x>y)f(x,y);elseif(y>z)f(y,z);elsef(x,z);printf(“%d,%d,%d\n”,x,y,z);}执行后输出结果是(C)。A.1,2,3 B.3,1,2 C.1,3,2 D.2,3,13.有语句charstr1[10],str2[10]={"books"};则能将字符串books赋给数组strl的正确语句是(B)。 (2分)A.str1={"Books"}; B.strcpy(str1,str2);C.str1=str2; D.strcpy(str2,str1);4.若有变量说明:chars,s1[20];执行语句:s="student”;s1=s;正确的叙述是(A)。(2分)A.二个语句都不正确 B.s所指向的字符串和si的值都是“student”C.第一个语句正确,而第二个语句不正确D.第二个语句正确,而第一个语句不正确5.C语言的编译系统对宏命令是(D)时候处理的。(2分)在程序运行在程序连接时C.和源程序其它C语言同时进行编译时D.对源程序其它成份正式编译之前进行处理的6.下列说法不正确的是(D)。 (2分)A.宏替换不占用运行时间 B.宏无类型宏替换只是字符替换 D.宏名必须用大写字母表示7.若有以下说明和语句,则输出结果是(B)。charsp[]="\x69\082\n";printf("%d",strlen(sp));(2分)A.3C.1以下函数调用中有(A)个实参。expd((a1,a2,a3),(a4,a5),a7,a8)(2分)A.4个 B.3个执行完下面的程序段后,屏幕显示的内容为5D.字符串中有非法字符,输出值不定8个 D.5个(C)。main(){inta=2,i;for(i=0;i<3i=""printf=""d=""f=""a="">}f(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);}A.777 B.777 C.789 D.789若有宏定义与变量说明如下:defineX5defineYX+1defineZY*X/2inta;a=Y;则执行以下printf语句后输出的结果是(A)。Printf("%d%d\n",Z,--a);(2分)A.75 B.126 C.125 D.7611.函数调用可以……,以下错误的是(D)。 (2分)A.出现在执行语句中 B. 出现在一个表达式中C.作为一个函数的实参 D. 作为一个函数的形参C语言中函数能否嵌套调用和递归调用?以下说法正确的是(A)。 (2分)A.二者均不可 B. 前者可,后者不可C.前者不可,后者可 D. 二者均可C语言允许函数值类型缺省定义,此时该函数值隐含的类型是6)。 (2分)A.float型 B.int型 C.long型 D.double型有两个字符数组a,b,则以下正确的输入语句是(B)。 (2分)第3页/共9页A.gets(a,b); B.scanf("%s%s",a,b);C.scanf("%s%s",&a,&b); D.gets("a"),gets("b");15.数组名作为参数传递给函数,此时作为实在参数的数组名被处理为(D)。 (2分)A.该数组的长度 B.该数组的元素个数C.该数组中各元素的值 D.该数组的首地址16.以下能正确定义一维数组的选项是(B)。 (2分)A.intnum[];C.intnum[0..100];

intnum[N];B.#defineN100intnum[N];D.intN=100;17.若程序中定义了以下函数doublemyadd(doublea,doubleB){return(a+B);}并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是_(A)。(2分)A.doublemyadd(doublea,B); B.doublemyadd(double,double);C.doublemyadd(doubleb,doubleA); D.doublemyadd(doublex,doubley);18.以下描述中,正确的是(A)。 (2分)A.调用函数时,实参可以是表达式 B.调用函数时,将为形参分配内存单元C.调用函数时,实参与形参的原型必须一致D.调用函数时,实参与形参可以用内存单元19.在C语言中,引用数组元素时,其下标的数据类型允许是(C)。 (2分)A.整型常量 B.整型表达式整型常量或整型表达式 D.任何类型的表达式20.变量的有效范围与其定义位置有关,(B),其作用域在整个源程序文件中都有效。(2分)A.在第一个函数中定义的变量C.在主函数中定义的变量B.在定义第一个函数之前所定义的变量在函数中定义的静态变量二填空题(共7题,总分值28分)21.以下程序运行后的输出结果是 9 。#defineSQR(x)x*xmain(){inta,k=3;a=++SQR(k+1);printf("%d\n",a);}(4分)22.有以下程序voidswap1(intc[]){intt;t=c[0];c[0]=c[1];c[1]=t;}voidswap2(intc0,intc1){intt;t=c0;c0=c1;c1=t;}main(){inta[2]={3,5},b[2]={3,5};swap1(A);swap2(b[0],b[1]);printf(“%d,%d,%d,%d\n”,a[0],a[1],b[0],b[1]);}其输出结果是__5335 。(4分).在C语言中,二维数组元素在内存中的存放顺序是按一行存放的。(4分).凡是函数中未指定存储类别的局部变量,其隐含的存储类别为___auto 。(4分).以下函数的功能是删除字符串s中的所有数字字符。请填空。voiddele(chars[]){intn=0,i;for(i=0,s[i];i++)if(___s[i]<’0’||s[i]>’9’_)s[n++]=s[i];s[n]=_\0’ ;}(4分)26.执行以下程序后,输出的结果是 4 。intm=10;intf(intx,inty){intm=5;m+=x*y;returnm;}main(){inta=6,b=7;printf(“%d\n”,f(a,b)/m);}(4分)27.以下程序实现从键盘上输入一个字符,用折半查找法找出该字符在已排序的字符串a中的位置。若字符不在,则打印**。请完善以下程序。第6页/共9页#include”stdio.h”#include”string.h”main(){charstr[100],ch;intbot=0,top,mid,flag=0;gets(str);getchar(ch);top=___strlen(str)-1 ;while((top-bot)>=0){mid= (top+bot)/2 ;if(str[mid]==c){ flag=1__; break ;}elseif(str[mid]bot= mid+1 ;elsetop=___mid-1 ;}if(flag)printf("%c字符在已知字符串中位置是%d\n”,elseprintf(“**”);}c,mid+1);(4分)编写程序将下标为奇数的数组元素从数组中删除,然后排序输出。

.#defineN10voidsort(inta[],intn){intI,j,t;for(I=1;I<=n-1;I++)for(j=0;jif(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}main(){inta[N],I,k=0;for(I=0;Iscanf("%d",&a[I]);for(I=0;Iif(I%2==0)a[k++]=a[I];sort(a,k);for(I=0;Iprintf("%d",a[I]);}编写程序实现输入一个十进制数,将其转化为指定进制的数制字符。#include"string.h"#include"stdio.h"voidf(intm,intr,chara[]){inti=0,k;charb[17]="0123456789ABCDEF",t;while(m!=0){a[i++]=b[m%r];m=m/r;}a[i]='\0';(16分)(16分)puts(a);k=strlen(a);for(i=0;i{t=a[i];a[i]=a[k-1-

温馨提示

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

评论

0/150

提交评论