2023年C语言试题库.pdf

上传人:文*** 文档编号:88938852 上传时间:2023-05-04 格式:PDF 页数:56 大小:4.23MB
返回 下载 相关 举报
2023年C语言试题库.pdf_第1页
第1页 / 共56页
2023年C语言试题库.pdf_第2页
第2页 / 共56页
点击查看更多>>
资源描述

《2023年C语言试题库.pdf》由会员分享,可在线阅读,更多相关《2023年C语言试题库.pdf(56页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C语言试题库一、单项选择第 一 章 C 语言概述(1)一个C 程序的执行是从A、本程序的M AIN函数开始,到 M A IN 函数结束。B、本程序文献的第一个函数开始,到本程序文献的最后一个函数结束。C、本程序的M AIN函数开始,到本程序的最后一个函数结束。D、本程序文献的第一个函数开始,到本程序的M AIN函数结束。(2)以下叙述对的的是A、在 C 程序中,M AIN函数必须位于程序的最前面。B、C 程序的每行中只能写一条语句。C、C 语言自身没有输入输出语句。D、在对一个C 程序进行编译的过程中,可发现注释中的拼写错误。(3)C 语言规定,在一个源程序中,M AIN主函数的位置是在:A、

2、必须在最前面。B、必须在系统调用的库函数的后面C、可以在任意位置。D、必须在最后面(4)一个C 程序是由:A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成(5)以下叙述不对的的是:A、一 个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个M A IN函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面第 二 章 数据类型、运算符与表达式(1)若x,i,j,k都是int型变量,则计算下面表达式后,x的值为.x=(i=4,j=1 6,k=3 2)A、4B、1 6C、3 2D、5 2(2)下列四组选项中,均不是C语言键字的选项是一A、

3、define,IF,typeB、getc,char,printfC、include,scanf,caseE if,struct,type(3)下面四个选项中,均是不合法的用户标记符的选项是A、A,P _0 ,doB float,laO,_AC、b-a,goto,intD、_ 123,temp,INT(4 )若有代数式3 ae/b c,则对的的C 语言表达式是一A、a/b/c*e*3B、3*a*e/bcC、3*a*e/b*cD、a*e/c/b*3(5)已知各变量的类型说明如下:int k,a,b;unsinged long w=5;double x=1.42;则以下不符合C 语言语法的表达式是一

4、A、x%(-3)B、w+=-2;C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)第 三 章 简 朴 c 程序设计(1 )putchar函数可以向终端输出一个A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量值(2 )若 x,y均定义为int型,z 定义为double型,以下合法的scanf函数调用语句是A、scanf(%d%lx,%le”,&x,&y,&z);B、scanf(“2d*%d%lf,&x,&y,&z);C、scanf(%x%*d%o”,&x,&y,&z);D、scanff%x%o%6.2f&x,&y,&z);当输入数据的形式为:2 5,1 3,

5、1 0 回车 时,以下程序的输出结果为.main()int x,y,z;scanf(=1 )&(x=200)&(x=l)|(x=200)|(x=l)&(x=200)&(x=l)|(x=200)|(x5)printfr%diT,m);else printf(4t%dn,m-);)A)4B)5C)6D)7(5)为 了避免在嵌套的条件语句中if-else中产生二义性,c 语言规定:e lse 子句总是与相配对。A)缩排位置相同的ifB)其之前最近的ifC)其之后最近的ifD)同一行上的if第五章循环控制(1)设有程序段int k=10while(k=0)k=k-l则 下 面 描 叙 对 的 的 是。

6、A)while(k=0)k=k-l;B)循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次(2)下 面 程 序 段 的 运 营 结 果 是。int n=0;while(n+=2);printf(M%d,n);A)2B)3C)4D)有语法错(3)C 语言中while和 do-while循环的重要区别是A)do-while的循环体至少无条件执行一次B)w hile的循环控制条件比do-while的循环控制条件严格C)do-while允许从外部转到循环体内D)do-while允许从外部转到循环体内(4)以下能对的计算1*2*3*.*10的程序段是。A)do i=l;s=l;s=s*i;i

7、+;while(I=10);B)do i=l;s=0;s=s*i;i+;w h i l e(I =1 0);C)i=l;s=l;d o s=s*i;i+;w h i l e(I =1 0);D)i=l;s=0;d o s=s*i;i+;w h i l e(I =1 0);第六章数组(1)在c语言中,引用数组元素时,其数组下标的数据类型允许是A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式(2)以下能对二维数组a进 行 对 的 初 始 化 的 语 句 是。A)i n t a 2 =l,0,l ,5,2,3,);B)i n t a 3=l,2,3,4,5,6);C)i n 2

8、 4=l,2,3,4,5,6 ;D)i n t a 3=1,0,1,1,1);)(3)若有说明:i n t a 3 4=0;则 下 面 对 的 的 叙 述 是。A)只有元素a 可得到初值0B)此说明语句不对的C)数组a中各元素都可得到初值,但其值不一定为0D)数组a中每个元素均可得到初值0(4)下面程序(每行程序前面的数字表达行号)。1 main()2(3 float a10=0;4 int i5 fbr(i=0;iv3;i+)scanf(%d,&a);6 for(i=l;i10;i+)a0=a0+ai;7 printf(M%fn,aO);8)A)没有错误B)第3行有错误C)第5行有错误D)第

9、7行有错误(5)若二维数组a有m歹U,则计算机一元素在 数 组 中 位 置 的 公 式 为。(假设a0位于数组的第一个位置上。)A)i*m+jB)j*m+iC)i*m+j-lD)i*m+j+l第七章函数(1)以下对的的函数定义形式是 0A)double fun(int x,int y)C)double fun(int x;int y)D)double fun(int x,int y)E)double fun(int x,y);(2)以下对的的函数形式是 oA)double fun(int x,int y)z=x+y;return z;B)fun(int x,y)int z;return z;C

10、)fun(x,y)int x,y;double z;z=x+y;return z;D)double fun(int x,int y)double z;z=x+y;retum z;(3)C语言规定,简朴变量做实参时,它和相应形参之间的数据传递方式是A)地址传递B)单向值传递C)由实参传给形参,再由形参传回给实参D)传递方式(4)C语言允许函数值型缺省定义,此 时 该 函 数 值 隐 含 的 类 型 是。A)float 型B)int 型C)long 型D)double 型(5)下面函数调用语句具有实参的个数为func(exp 1 ,exp2),(exp3,exp4,exp5);A)1B)2C)4D

11、)5第八章编译预解决命令(1)请读程序:#define ADD(x)x+xmain()(int m=l,n=2,k=3;int sum=ADD(m+n)*k;printf(ttsum=%d,sum);)上 面 程 序 的 运 营 结 果 是。A)sum=9B)sum=10C)sum=12D)sum=18(2)以下 程 序 的 运 营 结 果 是。#define MIN(x,y)(x)A)p+5B)*a+lC)&a+1D)&a0(8)若有定义:int a ;则对a 数组的第I 行第J 列(假 设 I,J 已对的说明并赋值)元素值的对的引用为.A)*(*(a+I)+J)B)(a+I)jC)*(a+

12、I+j)D)*(a+I)+j(9)若有定义:inta23;则对a 数组的第i 行第j 歹 U (假设i,j 已对的说明并赋值)元素地址的对的引用为.A)*(ai+j)B)(a+i)C)*(a+j)E)ai+j(10)若有以下定义和语句,则对a 数 组 元 素 地 址 的 对 的 引 用 为.Int a23,(*p)3P=a;A)*(p+2)B)p2C)pl+lD)(p+1)+2第十章结构体与共用体(1)以下对结构体类型变量的定义中不对的的是A)#define STUDENT struct studentSTUDENTint num;float age;stdl;B)struct student

13、int num;float age;stdl;C)structint num;float age;stdl;D)structint num;float age;student;struct student stdl;(2)设有以下语句(3)struct stuint a;float b;Jstutype;则 下 面 叙 述 对 的 的 是.A)struct是结构体类型的关键字B)struct stu是用户定义的结构体类型C)stutype是用户定义的结构体类型名D)a和 b 都是结构体成员名(4)设有以下定义:struct skint n;float x;data,*p;若要使p 指向data

14、中的n 域,对的的赋值语句是A)p=&data.n;B)*p=data.n;C)p=(struct sk*)&data.n;D)p=(struct sk*)data.n;(5)设有以下语句:struct stint n;struct st*next;)static struct st a3=5,&a 1 ,7,&a2,9,0,*p;p=&aO;则以下表达式的值为6 的是.A)p+-nB)p-n+C)(*p).n+D)+p-n第十一章位运算(1)以下运算符中优先级最低的是 优先级最高的是 0A)&B)&C)|D)|若有运算符,sixeof,八成二则它们按优先级按由高到低的对的排列顺序是A)siz

15、eof,&=,AB)sizeof,A,&=C)A,sizeof,&=D),A,&=,sizeof(3)在 C 语言中,规定运算数必须是整型的运算符是 oA)AB)%C)!D)(4)在 C 语言中,规定运算数必须是整型或字符型的运算符是 oA)&B)&C)!D)|(5)sozeof(float)是。A)一种函数调用B)一种不合法的表达形式C)一个整型表达式D)一个浮点表达式第十 二 章 文献 系 统 的 标 准 输 入 文 献 是 指。A)犍盘B)显示器C)软盘D)硬盘(2)以下可作为函数fopen中第一个参数的对的格式是_A)c:usertext.txtB)c:usertext.txtC)c:

16、usertext.txtMD)n c:usertext.txtn(3 )若执行fopen函数时发生错误,则函数的返回值是A)地址值B)0C)1D)E 0 F(4)若要用fopen函数打开一个新的二进制文献,该文献要既能读又能写,则文献方式字符串应是。A)ab+B)wb+C)rb+D)ab(5)当顺利执行了文献关闭操作时,fclose函数的返回值是A)-lB)TUREC)0D)1二、填空第 一 章 C 语言概述(1)C 源程序的基本单位是()(2)一个C 源程序至少应涉及一个()(3)在一个C 源程序中,注释部分两侧的分界符分别为()和()(4)在 C 语言中,输入操作是由库函数()完毕的,输出

17、操作是由库函数()完毕的。第二章数据类型、运算符与表达式 在 C 语 言 中(以 1 6 位机为例),一 个 char型数据在内存中所占的字节数为(),一 个 in t型数据在内存中所占的字节数为()。在 C 语言中,实型变量分为两种类型,它 们 是()和()。若 a 是 int型变量,则计算表达式a=25/3%3后,a 的 值 为()。(4)C 语言中的标记符只能由三种字符组成,它 们 是(),()和()(5)表达式 8/4*(int)2.5/(int)(1.25*3.7+2.3)值的数据类型为()。第 三 章 简 朴 C 程序设计(1)以下程序的输出结果是()。main()int x=l,

18、y=2;printfTx=%d y=%d*sum*=%dn,x,y,x+y);p rin ts 10 squared is:%dn,10*10);)(2)以下程序的输出结果是()o#include main()int a=325;double x=3.1415926;printffa=%+06d x=%+en,a,x,);)(3)假设变量a 和 b 均为整型,以下语句可以下借助任何变量把a、b 中的值进行互换。请填空。a+=();b=a-();a-=();(4)设 x,y和 z 都是int型变量,m 为 long型变量,则 在 16位微型机上执行下面的赋值语句后,x值 为(),y 值 为(),

19、z 值 为()。y=(x=32767,x=-l);z=m=0 xFFFF(5)若 x 为 int型变量,则执行以下语句后x 的 值 是()x=7;x+=x-=x+x;第四章选择结构程序设计(1)当 a=3,b=2,c=l 时,表达式 f=abc 的 值 是()。(2)在 C 语言中表达逻辑“真”值 用()。(3)设 x,y,z均为in t型变量,请写出描述“x 或 y 中有一个小于z”的表达式().(4)当 m=2,n=l,a=l,b=2,c=3 时、执行完 d=(m=a!=b)&(n=bc)Jn;n 的 值 为(),m 的值为()o(5)W int a=3,b=4,c=5;则表达式 a|b+

20、c&b=c 的 值 为()。第五章循环控制(1)执行下面程序段后,K值 是()。K=l;n=263;Do k*=n%10;n/=10 while(n);下面程序段中循环体的执行次数是()oA=10;B=0;Do b+=2;a-=2+b;)while(a=0);(3)下面程序段的运营结果是()oX=2Do printf(*);x-;while(!x=0);(4)下面程序段的运营结果是()o1=1;a=0;s=l;Do a=a+s*i;s=-s;i+;while(i=10)Printf(a=%d,a);鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空。For(x=1 ;x=29

21、;x+)y=3O-x;if()printf C%d,%dn x,y);第六章数组(1)在C语言中,二维数组的定义方式为:类型说明符 数 组 名()();(2)在C语言中,二维数组元素在内存中的存放顺序是(3)若有定义:d o u b l e x 3 5 ;则x数组中行下标的下限为(),列下标的上限为()(4)若二维数组a有m歹U,则计算机任一元素a 在数组中位置的公式为:().(假设a O L O J位于数组的第一个位置上。)(5)若有定义:同眼 4 =1,2 ,0 ,4,6,8,10);则 初 始 化 后,得 到 的 初 值 是(),a 2 l 得到初值是()。第七章函数(1)C语言规定,可

22、执行程序的开始执行点是()。(2)在C语言中,一个函数一般由两个部分组成,它们是()和()。(3)下 面a d d函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分是();改正后为()。V o i d a d d(f l o a t a,f l o a t b)f l o a t c;c=a+b;r e tu r n c)以下程序的运营结果是()。m a i n()i n c r e m e n tQ;i n c r e m e n t();increment();increment();int x=O;x+=l;printfT%d”,x);)(5)以下Check函数的功能是对

23、value中的值进行四舍五入计算,若计算后的值与ponse值相等,则显示“WELLDONE!”,否则显示计算后的值。已有函数调用语句Check(ponse,value);请填空。Void Check(int ponse,value)int val;v a l=();printf(计算后的值:%d”,val);if()printf(14Nwell DNOE!n);else printf)”nSorry the correct answer is%dn,val);)第八章编译预解决命令(1)设有以下宏定义:#define WIDTH 80#define LENGTH WIDTH+40则执行赋值语句

24、:v=LENGTH*20;(V为 int型变量)后,v 的 值 是()。(2)设有以下宏定义:#define WIDTH 80#define LENGTH(WIDTH+40)则执行赚值语句:k=LENGTH*20;(K为 int型变量)后,k 的 值 是()。(3)下面程序的运营结果是()。#define DOUBLE(r)r*rmain()int x=1 ,y=2,t;t=DOBLE(x+y);prin氓“dn”,t);)下面程序的运营结果是()o#define MUL(z)(z)*(z)main()(printf(dn”,MUL(l+2)+3);)(5)下面程序的运营结果是()。#defi

25、ne POWER(x)(x)*(x)main()int 1=1;while(I=4)prin氓dt”,POWER(I+);printf,iT);)第九章指针(1)下面程序段的运营结果是()chars80,*sp=HELLO!”;sp=strcpy(s,sp);sO=h;puts(sp);(2)下面程序段的运营结果是()chara=,*p;ini 1=0;P=a;while(*p)ifI%2=0)p=*;p+;I+;)puts(a);(3)若有以下语句和定义:int a4=0,l,2,3,*p;p=&al;则+(*p)的 值 是()(4)若有定义:int a23=2,4,6,8,10,12);J

26、il!j(&a00+282+l 的值是(),*(al+2)的值是()。第十章结构体与共用体以下程序用以输出结构体变量b t所占内存单元的字节数,请 在()内填上适当的内容。Struct psdouble I;char arr20;)main()struct ps bt;ptintffbt size:%dn:,();(2)设有三人的姓名和年龄存在结构数组中,以下程序输出三人中年龄居中者的姓名和年龄,请在()内填上对的的内容。Static struct manchar name20int age;person44limingJS,“wanghua”,19,“zhangping”,20);main(

27、)int i,j,max,min;max=min=person0.age;for(i=l;imax)();else if(personi.agemin)();for(i=0;i3;i+)if(person i .age!=max()personi.age!=min)printfi(4b/n.a*+pn-b的 值 是(),表达式(*pn).a+pn-f的值是(4)以下程序的功能是计算并打印复数的差。请 在()内填入对的的内容。Struct compfloat re;float im;)struct comp*m(x,y)struct comp*x,*y;();z=(struct comp*)ma

28、lloc(sizeof(struct comp);z-re=x-re-y-re;z-im=x-im-y-im;retum();)main()struct comp 九;struct xomp a,b;a.re=l;a.im=2;b.re=3;b.im=4;t=m();p r i n tf(z.r e=%f,z.i m=%f,t-r e,t-i m);(5)以下程序的运营结果是()s tr u c t k s i n t a;i n t*b;s 4 ,*p;m a i n()(i n t n=l,i;p r i n tf(n”);f o r(i=0;i a,(p+)-a);)第十一章位运算(1)

29、在C语言中,&运算符作为单目运算符时表达的是()运算;作为双目运算符时表达的 是()运算。(2)与表达式a&=b等价的另一书写形式是()。(3)设有char a,b;若要通过a&b运算屏蔽掉a 中的其它位,只保存第2 和第8 位(右起为第1 位),则 b 的二进制数是().(4)测试char型变量a 第六位是否为1的表达式是()(设最右位是第一位)。设二进制数x 的值是11001101,若想通过x&y运算使x 中的低4 位不变,高 4 位清零,贝 y 的二进制数为()。第十二章文献(1)在 C 程序中,文献可以用()方式存取,也可以用()方式存取。(2)在 C 程序中,数据可以用()和()两种

30、代码形式存放。(3)在 C 程序中,文献的存取是以()为单位的,这种文献被称作()文献。(4)函数调用语句:fgets(buf,n,fp);从 fp指向的文献中读入()个字符放到buf字符数组中。函数值为()。(5)feof(fp)函数用来判断文献是否结束,假如碰到文献结束,函数值为(),否则为()。三、判断第 一 章 C 语言概述第二章数据类型、运算符与表达式(1)C 语言所提供的基本数据类型涉及:整型、实型和字符型。在 C 程序中,逗号运算符的优先级最低。(3)当从键盘输入数据时,对整型变量只能输入整型数据,对实型变量只能输入实型数据。(4)C 语言中的标记符只能由字母、数字和下划线三种字

31、符组成。(5)在 C 语言中,char型的数据在内存中的存储形式是原码形式。第 三 章 简 朴 C 程序设计(1 )当输入一个实型数据时,,格式控制部分应规定小数点后的位数,如 scanfC%4.2,&f)。(2 )整型变量的输出格式控制符只有d 一种。(3 )putchar函数可以向终端输出一个字符串。(4 )pirntf函数中用到格式符5 s,其中数字5 表达输出的字符串占5 歹 U,假如字符串长度大于 5,则输出按原字符长度从左向右所有输出。(5 )输入项可以是一个实型常量,如 scanf(%f,2.3)。第四章选择结构程序设计(1)逻辑运算符两侧的运算对象可以是任何基本类型的数据。(2

32、)C 语言中只提供了三种逻辑运算符:&,|),和!。(3 )若 a=6,b=4,c=3 则表达式 a&b+c|b-c 的值是 0。(4)关系运算式的结果都是逻辑值。(5 )若 a=l,b=2厕表达式ab?a:b+l的值是3。第五章循环控制(1 )设有以下程序段:int x=0,s=0;while(!x!=0)s+=+x;printfC%d”,s);则运营该程序段后输出为:0(2)for循环只能应用于循环次数已经拟定的情况。(3 )goto语句只能用于退出多层循环。(4)switch语句中不能出现continue语句。(5 )只能用continue语句终止本次循环。第六章数组(1)两个字符串中所

33、包含的字符个数相同时,才干比较字符串。(2 )字符数组可以存放字符串。(3)不能用关系运算符对字符数组中的字符串进行比较。(4 )假如定义了一个指向数组的指针,则该指针可以相称于数组名使用。(5)假如没有给一个整型数组的元素赋初值,则其元素的缺省初值所有为0。第七章函数(1 )C语言中,用户若需调用标准库函数,在调用前必须重新定义。(2)C语言中不允许用户重新定义标准库函数。(3)在C程序中,函数的定义和调用都不允许嵌套。(4)假如用数组名作为函数调用的实际参数,则传递给形参的是数组的首地址。(5 )形式能参数也是一种局部变量。第八章编译预解决命令(1 )预解决命令行都必须以#号开始。(2)宏

34、替换不占用运营时间,只占编译时间.(3)C程序在执行过程中对预解决命令进行解决。(4)宏名必须用大写字母表达。(5 )在文献包含预解决命令的使用形式中,当#include后的文献名用 括起来时,表达在当前目录搜索被包含文献。第九章指针(1 )若有定义:int(*p)4,则标记符p表达的是一个指向整型变量的指针。(2)若有定义:in t*p 4,则标记符p表达的是一个指针数组名。(3 )指针值就是地址值。(4 )若有定义i n t(*p)(),指针p可以表达函数返回值的类型。(5 )C语言允许m a i n 函数带形参,但形参名只能是a r g v 和 a r v c。第十章结构体与共用体(1

35、)当定义一个结构体变量时,系统分派给它的内存是各成员所需内存量的总和。(2)C语言中,结构体变量在程序执行期间只有部提成员驻留在内存中。(3 )一个共用体类型定义中不能出现结构体类型的成员。(4)用 t ype d e f 只是将已存在的类型用一个新的标记符来代表,而不能增长新类型。(5 )用 t ype d e f 可以定义各种类型名,但不能用来定义变量。第十 一 章 位运算第十二章文献(1 )运 用 f s e e k 函数可以实现文献的随机读写的操作。(2)函数r e w i n d 的作用是使位置指针重新返回文献的开头。(3)在 C程序中,文献可以用随机读写的方式存取,也可以用顺序读写

36、的方式存取。(4)函数f t e l l(f p)的作用是得到流式文献中的当前位置。(5 )f g e t c 函数的作用是从指定文献读入一个字符,该文献的打开方式必须是只读的。四、程序设计第 一 章 C语言概述第二章数据类型、运算符与表达式第 三 章 简 朴 C程序设计第四章选择结构程序设计(1)编程实现:输入一个整数,判断它能否被子3,5,7整除,并输出以下信息之一:1)能同时被3,5,7整除;2)能被其中两数(要指出哪两个)整除;3)能被其中一个数(要指出哪一个)整除;4)不能被3,5,7任一个整除。(2)用s w i t c h编程实现:(x 0)Yy=L 0 (x=0)1 (x.O)

37、第五章循环控制(1)每个苹果0.8元,第一天买2个苹果,第二天开始,天天买前一天的倍,直至购买的苹果个数达成不超过1 0 0的最大值。编写程序求天天平均花多少钱?(2)编写程序,从键盘输入6名学生的5门成绩,分别记录出每个学生的平均成绩。第六章数组(1)从键盘输入若干整数(数据个数应少于5 0),其值在。至4的范围内,用一1作为输入结束的标志。记录每个整数的个数。试编程。(2)若有说明:i n t a 3 =1,2,3 ,4,5,6 ;现要将2的行和列的元素互换后存到另一个二维数组b中。试编程。第七章函数已有变量定义和函数调用语句i n t a,b;b=s u m(a);函数s u m。用以求

38、 k ,和数作为函数值返回。若a值 为1 0,经函数sum的计算后,b的值是5 5。请编写sum函数。Su m(i n t n)(2)a是一个2*4的整型数组,且各元素均已赋值,函 数m ax _v al u e可求出其中的最大元素值m a x,并将此值返回主调函数。今有函数调用语句m ax=m ax _v al u e(a);请 编 写m ax _v al u e函数。M ax _v al u e(i n t ar r 4 )()第八章编译预解决命令(1)输入两个整数,求它相除的余数。用带参的宏来编程实现。(2)试用义一个带参的宏swap(x,y),以实现两个整数之间的互换,并运用它将一维数

39、组a和b的值进行互换。第九章指针(1)编一程序,将字符串computer赋给一个字符数组,然后从第一个字母开始间隔地输出该串。请用指针完毕。(2)设有一数列,包 含10个数,已按升序排好。现规定编一程序,它可以把从指定位置开始的N个数按逆序重新排列并输出新的完整数列。进行逆序解决时要赤使用指针方法。试编程。(例如:原数列为2,4,6,8,10,12,14,16,18,2 0,若规定把从第4个数开始的5个数按逆序重新排列,则得到新数列为 2,4,6,16,14,12,10,8,18,20)第十章结构体与共用体(1)试运用指向结构体的指针编制一程序,实现输入三个学生的学号、数学期中和期末成绩,然后

40、计算其平均成绩并输出成绩表。(2)请定义枚举类型,用枚举元素代表人民币的面值涉及1,2,5分;1,2,5角;1,2,5,10,50,100 元。第十一章位运算(1)请编程序:从终端读入16进制无符号整数M,调 用 函 数rightrot将M中的原始数据循环右移N位。并输出移位前后的内容。(2)请编写函数getbits从 一 个16位的单元中取出以n l开始至n2结束的某几位,起始位和结束位都从左向右计算。同时编写主函数调用getbits进行验证。第 十 二 章文献(1)请编写程序:从键盘输入一个字符串,将其中的小写字母所有转换成大写字母,输出到磁盘 文 献“叩per.txt”中保存。输入的字符

41、串以“!”结束。然后再将文献upper.txt中的内容读出显示在屏幕上。(2)设 文 献student.dat中存放着一年级学生的基本情况,这些情况由以下结构体来描述:struc studentlong int num;/*学号*/char name10;/*姓 名*/int age;/*年龄*/char sex;/*性别*/char speciality20;/*专业*/char addr40;/*地址*/请编写程序,输 出 学 号 在970101971035之间的学生学号、姓 名、年龄和性别。五、参考答案一、名词解释二、单项选择题第 一 章C语言概述(1)A(2)C(3)D(4)C(5)B

42、第 二 章 数 据 类 型、运算符与表达式(1)C(2)A(3)C(4)C(5)A第三章 简朴C 程序设计(1)D(2)D(3)D(4)A(5)B第四章选择结构程序设计(1)C(2)B(3)D(4)C(5)B第五章循环控制(1)CCA(4)C(5)C第 六 章 数 组(1)CBDC(5)D第 七 章 函 数(1)ADB(4)BB第八章编译预解决(1)BBD(4)DB第 九 章 指 针(1)DBB(4)D(5)C(6)DD(8)AD(10)C第十章结构体与共用体(1)D cD c(5)D第十一章位运算(1)CBB(3)B(4)Bc第十二章文献(1)AB cD(5)C三、填空题第 一 章C语言概述

43、(1)函数(2)主函数(或:main函数)(3)/*/(4)scanf printf第 二 章 数 据 类 型、运算符与表达式(1)1 2(2)单精度型(或:float型)双精度型(或double型)(3)10 6(4)字 母 数字 下划线整型(或:int型)第三章 简朴C 程序设计(l)x=l y=2*sum*=310 Squared is:100 a=+00325-x=+3.14159e+00(此处“-”代表空格)vlb b b(4)32766-l 65535(5)-14第四章选择结构程序设计(I)0(2)非 0 的数字(3)xz|yz(4)0 1(5)1第五章循环控制(1)363(3)*

44、(4)a=-5(5)2*i+4*y=90第 六 章 数 组(1)常 量 表 达 式 常量表达式(2)按行主顺序存放 0 4(4)0 6第 七 章 函 数 程 序 中 的 main。函数(2)函 数 说 明 部 分 函数体(3)void add(float a,float b)float add(float a,float b)(4)Hl(5)(int)(value*10+5)/10)ponse=val第八章编译预解决(1)880(2)2400(3)5(4)12(5)2 12第 九 章 指 针(1)hELLO!(2)*2*4*6*8*(3)2 12 12第 十 章 结 构 体 与 共 用 体(1

45、)sizeof(struct ps)(2)max=personi.age min=personi.age&(3)12 6.0(4)struct comp*z z&a,&b(5)7,3第 十 一 章 位 运 算(1)取地址 按位与(2)a=a&b(3)10000010(4)a&040 或 a&0 x20 或 a&32(5)00001111第 十 二 章 文 献顺序(或随机)(2)二进制(3)字符(4)n-l(5)50*sizeof(struct st)随机(或顺序)ASCII流式buf的首地址四、判断第二章数据类型、运算符与表达式(1)错(2 )对(3 )(4)(5 )第三章(1 )(2 )(3

46、 )(4)(5 )第四章(1 )(2 )(3 )(4)(5 )第五章(1 )(2)(3 )(4)(5 )第六章(1)(2)错对错简朴C 程序设计错错错对错对对错对对错错错错对数组错对(3 )(4)(5 )第七章(1 )(2 )(3 )(4)(5 )第八章(1 )(2 )(3 )(4)(5 )第九章(1 )(2)(3 )(4)(5 )第十章(1)(2)对对对函数错错错对对编译预解决命令对对错错错指针错对对错错结构体与共用体对错(3)错(4 )对(5)错第十三章文献(1 )错(2 )对(3 )对(4 )对(5 )错五、编程题第 一 章 C 语言概述第 二 章 数 据 类 型、运算符与表达式第三章

47、简朴C 程序设计第四章选择结构程序设计(1)main()int x;scanRd”,&x);if(x%3=0)&(x%5=0)&(x%7=0)printf(%d can be divided by 3,5,7n”,x);else if(x%3=0)&(x%5=0)printf(t4%d can be divided by 3,5n”,x);else if(x%3=0)&(x%7=0)printf(d can be divided by 3,7n,x);else if(x%5=0)&(x%7=0)printf(d can be divided by 5,7n?,x);else if(x%3=0)

48、printf(:%d can be divided by 3n”,x);else if(x%5=0)printf d can be divided by 5n”,x);else if(x%7=0)printf(%d can be divided by 7n”,x);elseprintff%d cannot be divided 3,5,7nv,x);)(2)main()float x;int y;printfpn input x:);scanf(t6%f&x);switch(x0)case l;y=-l;break;case 0;switch(x=0)case 1;y=0;break;defa

49、ult:y=1;)p rin tf y=%d,y);第 五 章 循 环 控 制(1)#include main()int day=0,buy=2;float sum=0.0,ave;do sum+=0.8*buy;day+;buy*=2;while(buy=100);ave=sum/day;printRf,ave;)(2)#includemain()int ij;float(i=l;i=6;i+)sum=0;for(j=l;j=0&x=4)anx;n+;for(i=o;i=5;i+)ci=0;for(i=0;in;I+)cfai+;printffThe result is:n);for(i=;

50、i=4;i+)printfT%d:%dn”,ci);printfCW);)(2)main()int a 54=3,6,2,3,9,0,2,5,6,7,4,0,0,0,0;int i,j;for(i=0;I4;I+)for(j=0;j4;j+)a4j+=aij;printffThe result is:n);for(i=0;i4;i+)printf(tt%3d,a4i);)第 七 章 函 数(1)sum(int n)int i,k=0;for(i=0;i=n;i+)k+=i;return k;)(2)max(int arr4)int I,j,max;max=arr010;for(I=0;I2;I

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com