您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > [0039]《C语言》西南大学-2017-秋学期-计算机专业-作业题目及参考答案
[0039]《C语言》西南大学2017秋学期计算机专业作业题目及参考答案LU西南大学网络与继续教育学院课程代码:0039学年学季:20172单项选择题1、假定p1和p2是已赋值的字符型指针,则下述有关运算中,非法的是().p2=p1+(p1-p2);printf(equal.);.if(p1==p2).*(p1-2+p2)=getchar();*(p1+=2)=*p22、循环语句for(x=0,y=0;(y!=123)||(x4);x++);的循环执行()无限次不确定次4次3次3、设有定义inta=5,b,*p=&a;,执行下列语句后,b的值不为5的赋值语句是()。b=*&ab=*b=ab=*a4、若有定义:chars[81];以下哪个选项不能实现将字符串ThisisaProgram.存入数组s中()。gets(s+2)scanf(\%20s\s).for(i=0;i18;i++)((c=getchar())!=\n)D.i=0;while((c=getchar())!=\n).i=0;while5、对于for(表达式1;;表达式3)可理解为()for(表达式1;0;表达式3)for(表达式1;1;表达式3)for(表达式1;表达式1;表达式3)for(表达式1;表达式3;表达式3)6、语句while(!e)中的条件!e等价于()e==0e!=1e!=0~e7、对于条件表达式(M)?(a++):(a--)来说,其中的表达式M等价于()M==0M==1M!=0M!=18、设x,y,z,t均为int型变量,则执行x=y=z=1;t=++x||++y&&++z;语句后,t的值为()不定值2109、设inta=2,b;则执行b=a&&1后b的值是()012310、执行下述程序后,输出的结果是()。#includestdio.h#defineSQR(X)X*Xvoidmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf(%d,a);}brspan=/br1019011、有如下程序,输入数据12345CR后,y的值是()。#includestdio.hvoidmain(){intx;floaty;scanf(%3d%f,&x,&y);}brspan=/br12.00000045.00000012345.0000000.00000012、若有如下程序,要求a1,a2,c1,c2的值分别为10,20,A,B,正确的数据输入是()。#includestdio.hvoidmain(){inta1,a2;charc1,c2;scanf(%d%d,&a1,&a2);scanf(%c%c,&c1,&c2);}brspan=/br020AB10201020AB1020AB13、下面程序的输出结果是()。#includestdio.hvoidmain(){printf(%d,null);}输出0因变量无定义,编译出错,没有输出输出-1输出014、求解表达式f=(3.0,4.0,5.0),(2.0,1.0,0.0)后;下列正确的选项是()语法错误使f的值为5.0使f的值为0.0使f的值为2.015、字符串\ABC\的长度是()1175316、表达式(1,2,3,4)的值是(123417、设intm=1,n=2;则表达式++m==n的值是()012318、设n=10,i=4;则赋值运算n%=i+1执行后n的值是()032119、设有语句inta=3;,执行语句a+=a-=a*a;后,变量a的值是()309-1220、下列选项中不是C语言提供的合法保留字的是()switchchercasedefault21、表达式a=(a=6,a*6,a+3);运行后,则a的值为()39366922、下列符合C语言语法的实数是()1.5e0.53.16e0.5e-10e+823、关下面语句的输出的判断中,正确的是()。longx=-输出值为-4赋值非法输出值不确定输出值为424、char型常量在内存中存放的是()SCII码值CD码值内码值十进制代码值25、C语言提供的合法的数据类型保留字(或称关键字)是()FloatunsignedintegerChar26、设inta=l,b=2,c=3;,执行表达式(ab)&&(c=1)后c的值是()012327、设struct{intx;inty;}m[2]={7,3,2,1};,执行printf(“%d”,m[0].x/m[1].x*m[0].y);后的输出结果是()10.598.0728、下列叙述正确的是()continue语句的作用是跳出循环体while循环语句的循环体至少执行一次do-while循环语句的循环体至少执行一次switch语句中的每个case语句组必须含有break语句29、关于函数,下列叙述正确的是()一个函数中可以定义其它的函数C程序总是从main()函数开始执行main()函数也可以被其它函数调用一个C程序可以有多个main()函数30、设doublex=5.168;,执行printf(“%5.3f”,(int)(x*10+0.5)/10.0);后的输出结果是()5.2185.2105.2005.16831、设inta[]={12,34,56,78},*p=a;,下列表达式的值为56的是()[1+2]*(a+2)a[3]*(p+3)32、正确的C语言字符常量是()brspan=/br‘\\’‘65’“A”‘/n’33、能正确表达数学关系式0≤x20的C语言表达式是()brspan=/br0=x20x=0||x20x=0&&x20!(x=0)&&x2034、设inta=0,b=1;,下列语句错误的是()brspan=/bra=b=10;a++;b+=a;(a+b)++;35、函数调用语句fun(fun(a,a+b,a+c),(a,b,c),5);中函数fun的参数个数是()brspan=/br345636、可用于C语言用户标识符的是()E.void,defineF.2c,DOFor,-abcas_b3,_12337、下列运算符的操作数必须是整型的是()A.B.!C.%D.=主观题38、下列程序的功能是在数组a中寻找最大值的下标,输出数组a中的最大值及其下标。请填空:#includestdio.hvoidmain(){inta[10],i,max;for(i=0;i10;i++)scanf(%d,&a[i]);for((1);i10;i++)if(a[i]a[max])(2)printf(最大值为:%d,下标是:%d,(3),max);}参考答案:i=1,max=0或max=i=0;max=i;a[max]39、设intm=3;floatn=12.6;charch=’a’;,若用输入语句实现上述三个变量的初始化结果且键入数据形式为:3,12.6a回车换行,则scanf语句应是___________。参考答案:scanf(%d,%f%c,&m,&n,&ch)40、设inti;floatf=3.14;,执行i=(int)f;后,变量f的值是____________。参考答案:3.1441、若定义函数时类型缺省,则该函数默认的类型是___________。参考答案:extern42、设floata,b,c;,若a、b和c分别为三角形的三条边长,它们“能构成等边三角形”的逻辑表达式是____________。参考答案:(a==b)&&(c==b)&&(a==c)43、编写C语言程序的一般步骤什么?在VC环境下,调试程序的基本步骤有哪些?调试程序中常见的错误有哪些?如何解决发现这些错误?参考答案:编写C语言程序的一般步骤:分析问题、构建算法、描述算法、编码、调试。在VC环境下,调试程序的基本步骤有编辑、编译、连接、执行调试程序中常见的错误有语法错误和逻辑错误。其中语法错误通过编译来实现,逻辑错误通过单步追踪和设置断点的方法来发现逻辑错误。44、在C语言为什么规定对所有用到的变量要先定义,后使用”?这样的做有什么好处?参考答案:对所有用到的变量进行先定义,后使用”的原因:凡未被事先定义的,C语言不把他认作变量,这样的目的能是为了保证程序中的变量能被正确的使用。好处:(1)每一个变量被指定为一个确定类型,在编译时C语言就能为其分配相应的存储单元。(2)指定每一个变量属于一个类型,便于在编译时检查在程序变量进行的运算合法性。45、找出一个3行4列的二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小。可能有几个鞍点也可能一个都没有。参考答案:46、请给出C语言的主要数据类型,请你至少给出4种以上的数据类型实例。参考答案:主要数据类型有:C语言包括基本类型(整型、字符型、浮点型(单、双精度型)枚举类型)、构造类型(数组、结构体、共用体类型)、指针类型、空类型。数据类型实例依据学生答题评定47、一个C程序由哪些要素构成,请给出一个C语言程序进行说明。参考答案:一个C程序由若干函数组成,但至少一个主函数。而每个函数包括函数的首部和函数体。实例自行给定48、编一程序求:1+(1+2)+(1+2+3)+……+(1+2+3+……+10)。参考答案:参考答案#includestdio.hmain(){inti,s=0,t=0;for(i=1;i=10;i++){t+=i;s+=t;}printf(%d,s);}49、C语言程序包括哪些三种基本结构?请给出这三种基本结构的传统流程图或N-S图参考答案:C语言程序包括哪些三种基本结构:顺序结构、选择(或分支)结构、循环结构.三种基本结构图示依据作业情况评定Ø顺序结构顺序结构是一种最基本、最简单的程序结构。先执行A,再执行B,A与B是按照顺序执行。Ø选择(或分支)结构根据条件是否成立而去执行不同的程序模块。当条件P为真时,执行A,否则执行B,即要么执行A,要么执行B。Ø循环结构循环结构是指重复执行某些操作,重复执行的部分称为循环体。50、什么是函数的原型?其作用是什么?在这些作用中如何使用?参考答案:若自定义了一个函数,则该函数的首部称之为该函数的原型函数原型的作用:调用函数的接口;用于原型声明其中函数的调用方法:函数(实在参数)函数的原型声明:当被调用函数在调用函数之后时,必须进行原型声明,在程序最前面或在调用函数中进行声明,声明方法:函数的首部;51、什么是内部函数和外部函数?参考答案:内部函数:一个函数只能被本文件中的其它函数调所用,在定义时使用static。外部函数:一个函数不光是被本文件中其它函数调用,还可以被其它文件中的函数调用,定义时用extern。extern可缺省。52、在下列程序中,循环结构执行结束后,i的值是多少,循环次数是多少?i--执行的次数是多少?#includestdio.hintmain(){inti=100,s=0,n=0;while(i--){s+=i;n++;}printf(%d,n);}参考答案:I的值为-1,循环次数是100,i--执行的次数为10153、在下列程序中,fun函数为一个递归函数,请将程序中的fun函数改为非递归函数,保持功能不变。#includestdio.hlongfun(intn){if(n==1)return1;elsereturnn*fun(n-1);}voidmain(){intn;printf(请输入n的值:);scanf(%d,&n);printf(%d!=%ld,n,fun(n));}参考答案:参考答案#includestdio.h#includestring.hviodfun(){intn;charch[10];gets(ch);n=strlen(ch);for(i=n-1;i=0;i--)printf(%c,ch[i]);}main(){f();}54、参考答案:1.(a+
本文标题:[0039]《C语言》西南大学-2017-秋学期-计算机专业-作业题目及参考答案
链接地址:https://www.777doc.com/doc-4644986 .html