欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    安徽工业大学计算机C语言选择题(共六卷).docx

    • 资源ID:1181098       资源大小:412.09KB        全文页数:159页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    安徽工业大学计算机C语言选择题(共六卷).docx

    安徽工业大学计算机C语言选择题(一)总分:100分考试时间:90分钟注意事项:> 仔细检查试卷和答题纸,如有问题立即举手询问,在开考前报告监考老师。> 考生必须在答题卡上与题号相对应的答题区域内答题,书写在试卷(题签)、草稿纸上或答题卡上非题号对应的答题区域的答案一律无效。> 考试结束,不得将试卷、答题卡或草稿纸带出考场。一、理论基础(每小题1分,共10分)1、下列运算符中优先级最高的算符是OA、!B、C、-D、&&2、以下标识符中,不能作为合法的C用户定义标识符的是oA、 putcharB、 _doubleC、 _123D、INT3、已有定义:Charc;不能用于判断C中的字符是否为大写字母的表达式是A、c>=,A'yic<='Z,B>,A,<=ctZ,C、'A,<=c<=,Z,D、c<=(,z,-32)&&(,a,-32)<=c4、C语言中,运算符>二属于A、算术运算符B、关系运算符C、逻辑运算符D、条件运算符5、在'计算机中,用()位二进制码组成一个字节。A、8B、16C、32D、64.6、以下数值中,不正确的八进制数或十六进制数是oA、0x16B、016C、-16D、 Oxaaaa7、已知字母a的ascii码十进制值为97,则执行以下语句后的输出为yhgchara-'a,;a;printf(,%d,%cn',a+,2'-'0'.a+,3,-,0');A、b,cB、a-运算不合法,故有语法错C、98,cD、格式描述和输出项不匹配,输出无定值8、以下选项中正确的整型常量是oA、12.B、-20C、1,000D、4569、如果inta=2,b=3,c=0,下列描述正确的是。A、a>b!=c和a>(b!=c)的执行顺序是一样的B、!a!=(b!=c)表达式的值为1C、aI(b=c)执行后b的值为0D、aMb>c的结果为假10、以下常量中,能够代表逻辑"真"值的常量是oA、0,B、OC、0'D、NULL11、设a=5>b=6>C=I0、d=8、m=2、n=5,执行(m=ab)&&(n=c>d)后n的值为A、1B、5C、3D、412、以下答案中不是C语言最基本数据类型的是oA、逻辑型B、整型C、字符型D、指针型13、设CharS10=abcde",t=12345;则S和t在内存中分配的字节数分别是OA、6和5B、6和6C、10和5D、10和614、下列引用的定义中,()是错误的。A、 inti;int&j=i;B、 inti;int&j;j=i;C、 floati;float&j=i;D、 chard;char&k=d;15、与十六进制数ab等值的二进数是OA、 10101010B、 10101011C、 10111010D、 1011101116、设有intx=l1;则表达式(x+*l3)的值是。A、3B、4C、11D、1217、未指定存储类别的变量,其隐含的存储类别为oA、 autoB、 staticC、 externD、 register18、表达式"0xll"的值是oA、 OxFFEEB、 0x71C、 0x0071D、 OxFFEl19、有如下程序inta10=1,2,3,4,5,6,7,8,9,10),*p=a;则数值为9的表达式是OA、 *P+9B、*(P+8)C、*P+=9DsP+820、指针X指向的整型变量值为25,贝Printf("dn",+*x);”的输出是A、23B、24C、25D、26二、控制结构(每小题1分,共10分)1、在C程序中,判断逻辑值时,分别用()表示逻辑值“真“、”假A、非00B、01C、非0非0D、112、a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是O。A、a*ba*b=lB、 ab*ba=lC、 ab*b+a%b=aD、 ab*b=a3、有以下定义语句:doublea,b;intw;longc;若各变量已正确赋值,则下列选项中正确的表达式是OA、 a=a+b-b+B、w%(int)a+b)C、(c+w)%(int)aD、w=a=b4、设变量a、b、e、d和y都已正确定义并赋值。若有以下if语句:if(a<b)if(c=d)y=0;elsey=l;该语句所表示的含义是。A、y=0,aB、 y=0,ay=l,aby-1,ab且CwelC、 y=0,aD、 y=0,ay=l,aVB且CDy=nl,cd5、若a是数值类型,则逻辑表达式(a=l)(a!=l)的值是。A、1B、0C、2D、不知道a的值,不能确定6、若有定义:floatx=l.5;inta=l,b=3,c=2;则正确的SWitCh语句是A、switch(x)case 1. 0:printf(,*nr,);case 2. 0:printf(w*nw);)B、switch(int)x);case 1 :printf(,*nr,);case 2 :printf(,'*nr,);)C、switch(a+b)case1:printf(,'*nr,);case2+1:printf(,'*nr,);D、switch(a+b)case1:printf(,*nr,);casec:printf(,'*nr,);)7、设变量X和y均已正确定义并赋值。以下if语句中,在编译时将产生错误信息的是OA、if(x+);B、if(x>y&&y!=0);C、if(x>O)xD、if(y<O);8、下列程序的输出结果是omain()(inta=0,i;for(i=l;i<5;i+)(switch(i)(case0:case3:a+=l;case1;case2:a+=2;default:a+=3;printf(,%dr,a);)A、19B、1C、6D、89、在C的if语句中,可用作条件的表达式是oA、关系表达式B、逻辑表达式C、算术表达式D、任意表达式10、设变量X和y均已正确定义并赋值。以下if语句中,在编译时将产生错误信息的是OA、 if(x+);Bxif(x>yMy!=0);C、if(x>0)-elsey+;D、if(y<0);elsex+;三、循环结构(每小题1分,共10分)1、运行下面程序时,从键盘输入字母a,则输出结果是一include<stdio.h>main()charch;ch=getchar();switch(ch)(case,a':printf(,aaaan);case,b,:printf(,bbbbnr,);default:printf(,ccccnr,);A、AB、AAAABBBBC、AAAABBBBCCCCD、ACCCC2、下列While循环的次数是。while(inti=0)i一;A、OB、1C、5D、无限3、以下不构成无限循环的语句或语句组是oA、n=0;do+n;while(n<=0);B、 n=0;whiIe(I)n+;C、 n=10;whiIe(n);n-;D、for(n=0,i=l;i+)n+=i;4、以下选项中哪些描述是不正确的?A、循环语句必须要有终止条件否则不能编译B、break关键字用于跳出当前循环C、ContinUe用于终止本次循环,执行下一次循环D、SWitCh条件语句中可以使用break5、以下程序运行后的输出结果是o#include<stdio.h>main()(ints=0,k;for(k=7;k>=0;k一)switch(k)case1:case4:case7:s+;break;case2:case3:case6:break;case0:case5:s+=2;break;)printf(,s=%dnr,s);)A、s=5Bxs=lC、s=3D、s=76、若有程序段:x=99;WhiIe(X-2)X-;则循环结束时,x=_A、99B、2C、1D、07、执行下面程序片段的结果是ointx=23;do(Printf("%2c,X-);)while(!x);A、打印出321B、打印出23C、不打印任何内容D、陷入死循环8、有以下程序main()(intk=4,n=0;for(;n<k;)(n+;if(n%3!=0)continue;k一;)printf(w%d,%dnw,k,n);程序运行后的输出结果是OA、1,1B、2,2C、3,3D、4,49、程序设计语言中OA、while循环语句的执行效率比CIO-While循环语句的执行效率高B、while循环语句的循环体执行次数比循环条件的判断次数多1,而do-while语句的循环体执行次数比循环条件的判断次数少1D、 while语句的循环体执行次数比循环条件的判断次数少1,而do-while语句的循环体执行次数比循环条件的判断次数多1E、 while语句的循环体执行次数比循环条件的判断次数少1,而do-while语句的循环体执行次数等于循环条件的判断次数10、以下程序中,while循环的循环次数是main()(inti=0;while(i<10)(if(i<1)continue;if(i=5)break;i+;)A、1B、10C、6D、死循环,不能确定次数四、数组/指针数组(每小题1分,共10分)1、在C语言中,一维数组的定义方式为:类型说明符数组名A、常量表达式B、整型表达式C、整型常量或整型表达式D、整型常量2、已知英文字母a的十进制ascii码值为65,那么a的十进制ascii码值为A、98B、100C、89D、973、对两个数组a和b进行下列初始化:charm="1234567";charn='l','2','3','4','5','6','7';则下列叙述正确的是。A、数组in与数组n完全相同B、数组m与数组n长度相同C、数组m比数组n长ID、数组m与数组n中都存放字符串4、设有以下定义:inta33=1,2,3,4,5,6,7,8,9;int(*ptr)3=a;则下列能正确表示数组元素al2的表达式是OA、*(*ptr+l)2)B、 a23C、 (*ptr+l)+2D、*(*(a+l)+2)5、设Charstr100;inti=5;则引用数组元素的错误形式的是。A、 str1+10B、 *(srr+C、 (str+I-1)D、*(&(str+)+6、要定义整型数组X,使之包括初值为0的三个元素,下列语句中错误的是A、 intx3=0,0,0;B、intx=0;C、 staticintx3=0;D、intXS7、若有inta10,*p=a;,且a数组已赋值,则与a4不等价的表达式为OA、p+4B、*(p÷4)C、*(a+4)D、 P48、以下能正确定义数组并正确赋初值的选项是OA、intN=5,aNN;B、intbl2=l,2;C、intc2=1,2,3,4;D、intd32=1,2,3,4;9、在以下定义中,标识符POint(*p)3;A、定义不合法B、是一个指针数组名,每个元素是一个指向整数变量的指针C、是一个指针,它指向一个具有三个元素的一维数组D、是一个指向整型变量的指针10、关于数组的定义与初始化,下列哪一项是错误的()A、intarr5=1,2,3,4,5;B、 intarr=1,2,3,4,5;C、 intarr5=1,2,3;D、 intarr5=1,2,3,4,5,6;五、字符串/字符串指针(每小题1分,共10分)1、在下列各项中,运算级别最低的为OA、算术运算符B、关系运算符C、逻辑运算符D、圆括号()2、从键盘上输入某字符串时,不可使用的函数是()。A、getchar()B、gets()C、scanf()D、fread()3、下列类型的数据不可以存储在可变型变量中的是OA、整型B、字节型C、单精度型D、日期型4、在C语言中,以作为字符串结束标志A、'n,BJ,C、,0,D、'0,5、下列哪个是C语言的有效标识符A、 _NolB、 No.1C、 12345D、int6、下面选项中合法的字符常量是OA、mXhB、'X'C、 'abc'D、7、下列变量定义中,错误的是oA、 intx=3;B、 floatf;d;CyStrings=,Hello!n;D、 booleanb=true;8、设Pl和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是()。A、 c=*pl+*p2;B、 p2=c;C、 pl=p2;D、c=*pl*(*p2);9、以下叙述中不正确的是OA、空字符串(即两个双引号连写)只占一个存储单元B、字符型常量可以放在字符型变量中C、字符型常量可以放在字符串变量中D、字符型常量可以与整数混合运算,而字符串常量不可以10、下列能正确进行字符串赋值的是oA、 chars5=aABCDEw);B、 chars5=,A,'B,C',D,E,;C、 char*s;s=wABCDEw;D、char*s;printf(,%S”,s);六、函数/函数指针(每小题1分,共10分)1、下列关于C语言的说法错误的是。A、C程序的工作过程是编辑、编译、连接、运行B、C语言不区分大小写。C、C程序的三种基本结构是顺序、选择、循环D、C程序从main函数开始执行2、有以下函数:fun(char*a,char*b)(while(*a!=,0,)M(*b!=10,)M(*a=*b)(a+;b+;)return(*a-*b);)该函数的功能是OA、计算a和b所指字符串的长度之差B、将b所指字符串连接到a所指字符串中C、将b所指字符串连接到a所指字符串后面D、比较a和b所指字符串的大小3、已有定义int(*p)O;指针P可以。A、代表函数的返回值B、指向函数的入口地址C、表示函数的类型D、表示函数返回值的类型4、以下叙述中正确的是。A、全局变量的作用域一定比局部变量的作用域范围大B、静态(static)类别变量的生存期贯穿于整个程序的运行期间C、函数的形参都属于全局变量D、未在定义语句中赋初值的auto变量和static变量的初值都是随机值5、已有函数max(a.b),为了让函数指针变量P指向函数max,正确的赋值方法是OA、 p=max;B、 *p=max;C、 p=max(a,b);D、 *p=max(a,b);6、阅读以下函数fun(char*sl,char*s2)(inti=0;while(sli=s2i&&s2i!=,O,)i+;return(sli=,O,4As2i=t0,);)此函数的功能是OA、将s2所指字符串赋给SlB、比较si和s2所指字符串的大小,若si比s2的大,函数值为1,否则函数值为0C、比较si和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0D、比较SI和s2所指字符串的长度,若SI比s2的长,函数值为1,否则函数值为07、设cl,c2均是Char类型变量,则不正确的函数调用为。A、 printf(w%c,%c,w,cl,c2)B、 getchar(cl)C、 putchar(,)D、 putchar(cl)8、调用函数时,当实参和形参都是简单变量时,它们之间数据传递的过程是A、实参将其地址传递给形参,并释放原先占用的存储单元B、实参将其地址传递给形参,调用结束时形参再将其地址回传给实参C、实参将其值传递给形参,调用结束时形参再将其值回传给实参D、实参将其值传递给形参,调用结束时形参并不将其值回传给实参9、设有如下函数定义:若执行调用语句:n=fun(3);则函数fun总被调用次数为。A、2B、3C、4D、510、以下程序的运行结果是o#include<stdio.h>#defineMIN(x,y)(x)<(y)?(x):(y)main()inti=10,j=15,k;k=10*MIN(i,j);printf(,%dnr,k);A、10B、15C、100D、150七、指针(每小题1分,共10分)1、以下关于数组的描述正确的是。A、数组的大小是固定的,但可以有不同的类型的数组元素。B、数组的大小是可变的,但所有数组元素的类型必须相同。C、数组的大小是固定的,但所有数组元素的类型必须相同。D、数组的大小是可变的,但可以有不同的类型的数组元素。2、以下不正确的定义语句是oA、doublex5=l.0,2.0,3.0,4.0,5.0;B、 inty5=0,1,2,3,4,5;C、 charcl='l,'2,3,4,5,;D、 charc2-'a,b,c,;3、在C语言中,调用函数除函数名外,还必须有一oA、函数预说明B、实际参数C、()D、函数返回值4、下列数据中属于”字符串常量”的是oA、ABCB、 "ABC"C、 'ABCD、'A'5、若有数组名作为函数调用的实参,传递给形参的是一oA、数组的首地址B、数组第一个元素的值C、数组中全部元素的值D、数组元素的个数6、以下定义:int(*p)4中,标识符P是oA、一个指向整型变量的指针B、一个指针数组名C、一个指针,它指向一个含有4个整型元素的一维数组D、说明不合法7、以下正确的函数头定义形式是,oA、 doublefun(intx,inty)B、 doublefun(intx;inty)C、 doublefun(intx,inty);D、 doublefun(intx,y);8、char*natch(charC)是()oA、函数定义的头部B、函数预说明C、函数调用D、指针变量说明9、有以下程序段:ChaCCI,c2,c3;scanf(',%c%c%c,&c1,&c2,&c3);若要给cl、C2、c3分别输入字母abe,则以下对输入形式的描述正确的是OA、字母ABC之间可以用空格分隔B、字母ABC之间不能有分隔符C、字母ABC之间可以用回车符分隔D、字母ABC之间可以用Tab键分隔10、以下函数调用语句中实参的个数是()。func(el,e2),(e3,e4,e5);A、2B、3C、5D、语法错误八、结构体(每小题1分,共10分)1、有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量bo则不能把结点b连接到结点a之后的语句是ostructnode(chardata;structnode*next;a,b,*p=&a,*q=&b;A、 3475B、 3574C、 1234D、 12352、以下程序运行后的输出结果是#include<stdio.h>structst(intx,y;data2=1,10,2,20);main()(structst*p-data;printf(r,%d,m,p->y);printf(h%dnw,(÷+p)->x);A、 10,1B、 20,1C、 10,2D、 20,23、设有如下说明typedefstructst(longa;intb;charc2;)new;则下面叙述中正确的是OA、以上的说明形式非法B、ST是一个结构体类型C、NEW是一个结构体类型D、NEW是一个结构体变量4、有以下程序include<stdio.h>structtt(intx;structtt*y;)*P;structtta4=20,a+1,15,a+2,30,a+3,17,a;main()(inti;p=a;for(i=l;i<=2,i+)printf(n%d,n,p->x);p=p->y;)程序的运行结果是OA、 20,30,B、 30,17C、 15,30,D、 20,155、C语言中用于定义类的关键字是oA、 classB、 structC、 defaultD、 sizeof6、以下叙述中正确的是oA、即使是同类型的结构体变量,也不能进行整体赋值B、结构体变量的地址不能作为实参传给函数C、结构体数组名不能作为实参传给函数D、结构体中可以含有指向本结构体的指针成员7、以下程序的输出结果是ftinclude<stdio.h>structst(intx;int*y;)*p;intdt4=10,20,30,40;structstaa4=50,&dt0,60,&dt0,60,adt03,60,&dt0,;main()(p=aa;printf(n%dnn,+(p->x);)A、10B、11C、51D、608、以下关于c语言数据类型使用的叙述中错误的是oA、若只处理“真”和“假”两种逻辑值,应使用逻辑类型B、若要保存带有多位小数的数据,可使用双精度类型C、整数类型表示的自然数是准确无误差的D、若要处理“人员信息”等含有不同类型的相关数据,应自定义结构体类型9、有以下程序structstucharnum10;floatscore3;),main()(structstus3=n20021”,90,95,85,“20022n,95,80,75,n20023,1,100,95,90,*p;inti;floatsum=0;p=s+l;for(i=0;i<3;i÷+)sum=sum+p->scorei;printf(r,%.3fnr,sum);程序运行后的输出结果是OA、250.000B、250C、270.000D、27010、以下对C语言中共用体类型数据的叙述正确的是A、可以对共用体变量名直接赋值B、一个共用体变量中可以同时存放其所有成员C、一个共用体变量中不可以同时存放其所有成员D、共用体类型定义中不能出现结构体类型的成员九、程序题(每小题1分,共10分)1、有以下程序main()inti,j,m-55;for(i=l;i<3;i+)for(j=3;j<=+)m=m%j;printf(r,%dnr,m);)程序的运行结果是OA、0B、1C、2D、32、有以下程序include<stdio.h>main()inta=l,b-0;printf(n%d,w,b-a+b);printf(r,%dr,a=2*b);程序运行后的输出结果是一OA、0,0B、1,0C、3,2D、1,23、以下程序的输出结果是一o#defineSQR(X)X*Xmain()(intA,k=2,m=l;A=SQR(k+m)/SQR(k+m);printf(w%dnw,a);)A、1B、7C、9D、34、有以下程序:main()(charx口="string”;x00;xl='0'x2='0,;printf(,%d%dn,sizeof(x),strlen(x);)程序运行后的输出结果是OA、61B、70C、63D、715、执行下列程序时输入:123V空格456V空格789V回车,输出结果是main()(chars100;intc,i;scanf(,%cn,&c);scanf(,%d,',6.i);scanf(m%sh,s);printf(n%c,%d,%sn”,c,i,s);)A、123,456,789B、1,456,789C、1,23,456,789D、1,23,4566、有以下程序main()(char*p10=wabcn,waabdfgw,wdcdben,habbdw,wcdw;printf(r,%dnH,strlen(p4);执行后输出结果是A、2B、3C、4D、57、有以下程序main()(intX=Oll;printf("%dnw,+x);程序运行后的输出结果是OA、12B、11C、10D、98、若希望下面的程序运行后输出45,程序空白处的正确选择是#include<stdio.h>voidmain()inti,j=10,a=1,3,5,7,9,11,13,15;for()j+=ai;printf(w%dnn,j);)A、i=5;i>l;iB、i=0;i<7;+iC、i=5;i>=l;iD、i=2;i<6;+i9、下面程序的输出结果是.#include<stdio.h>voidmain()(intx=8,y=-7,z=9;if(x<y)if(y<0)z=0;elsez-=l;printf(n%dnw,z);)A、8B、1C、9D、010、阅读以下程序:main()intx;for(x=5;x>0;x一一)if(x-<5)printf(M%d,m,x);elseprintf(n%d,n,x+);程序运行后的输出结果是A、 4,3,2B、 4,3,1,C、 5,4,2D、 5,3,1,【计算机C语言选择题(一)参考答案】一、理论基础1、A2、A3、B4、B5、A【解析】在计算机中,8位二进制码组成一个字节。6、C7、C8、B9、B10、CIlsB12、A13sD14、B15sB【解析】本题考查十六进制与二进制的转化,每位十六进制数正好对应4位二进制数,不足4位的高应补0。本题中数A对应IOl0,数B对应1011,故转换过程为ABTlC)IOIOllo16、A【解析】当自加运算符做后缀表达式的时候,表达式的值不变,只有变量的值增加1,所以表达式(x+*l3)相当于(11*1/3),取整后为3o17、A18sA19.B20、D二、控制结构1、A【解析】在C程序中,判断逻辑值时,用非。表示嗔",用0表示“假”。计算逻辑表达式时,逻辑表达式的值为“真”是用1表示的,若逻辑表达式的值为“假”,则用0表O2、C3、C【解析】选项A不是合法的赋值语句,将最右边的第一个赋值表达式加括号即为a=a+(b=b+)才正确,故选项A不正确。选项B中运算符%的对象必须是整型,而在选项B中(int)a+b为double型,故选项B不正确。a,b都为double型,应当避免使用a=b这样的关系表达式,因为通常存放在内存中的实型数据是有误差的,因此不可能精确相等,这将导致关系表达式a=b总为0。所以,4个选项中选项C符合题意。4、C5、A6、C【解析】在C语言中,SWitCh()后的一对圆括号中可以是整型表达式或字符表达式。case语句后面的常量表达式的类型必须与switch后圆括号中的表达式类型相同,备case语句标号的值应该互不相同。选项A)中case后面的常量表达式为实型,所以不正确;选项D)中CaSe后面出现了变量表达式,所以选项D)错误。7、C【解析】elsey+÷elsex+;本题考查的是if语句。if后表达式两侧的圆括号不可少,最后是一条语句或是用花括号括起来的一组语句。选项A和B是在表达式后跟了一条空语句,选项D是在表达式后跟了一组空语句,选项C中X-是表达式而不是语句,所以在编译时会出现错误信息。故本题答案选C。8、A9、D10、C【解析】C语言规定,在“if(表达式)语句Ielse语句2;”这种形式的if语句中,在每一个else前面有一个分号,整个语句结束处有一分号。在本题的C)选项中,else前面少了一个分号,这样程序在编译时,会出现语法错误。三、循环结构1、C【解析】本题考查SWitCh语句。因为ch=A,所以第一个SWitCh语句,执行ease'A'后面的语句,输出AAAA,没有遇到break语句,所以接着再执行CaSeB和default,分别输出BBBB和CCCCo2、A3、A【解析】WhiIe(I),条件永远为真,是无限循环;WhiIe(n);循环体为空语句,是无限循环;f。循环中两个分号之间为循环执行条件,如果省略,则为条件永远成立,为无限循环;所以答案选择Ao4、A5、D6、B7、B8、C9、D10、D四、数组/指针数组1、D2、D【解析】在ASCIl码表中,大、小写英文字母是分组排序安排在不同位置的,并且小写英文字母的码值比对应的大写英文字母的码值大32。所以,当知道A的ASell码值是65后,字符a的码值为65+32=97。3、C4、D【解析】指针变量Ptr是指向长度为3的整型一维数组,当Ptr指向二维数组a时,Ptr每移动一个单位将指向数组的下一行,*(*(a+l)+2)表示数组元素al21*(*(ptr+l)+2)也可以。5、D6、D【解析】选项D中整型数组X的第一个元素是NULL不是0,故选D。7、A【解析】请仔细阅读交规难度:简单8、D【解析】数组维数必须为常量;B.bl2数组为一行两列,而两行一列;数组定义错误,数组定义时列数必须写明,而行数可以缺省;D.表示正确,相当于L2,3,4,010)9、C10、D【解析】选项4初始化值大于数组的大小。五、字符串/字符串指针1、C【解析】如果在同一个表达式中出现不同的运算符,其优先顺序为:先执行算术运算、字符串运算和日期时间运算,其次执行关系运算,最后执行逻辑运算。如果在表达式中包含圆括号,首先应该计算出圆括号中的结果,其优先级最高。2、A3、B【解析】本题考查可变型变量。可变型变量可以存储9种类型的数据:空、NULL型、整型、长整型、单精度型、双精度型、货币型、日期型和字符串型。选项A错误,整型数据可以存储在可变型变量中;选项B正确,字节型数据不可以存储在可变型变量中;选项C错误,单精度型数据可以存储在可变型变量中;选项D错误,日期型数据可以存储在可变型变量中。答案为Bo4、D5、A【解析】标识符是一个以字母或下划线开始的,由字母、下划线和数字组成的字符串,标识符不能与任意关键字同名。6、B【解析】字符常量是用单引号括起来的一个字符。A选项中,使用双引号,所以是错误的;C选项中,abc是字符串,字符常量只能是单个字符,不能是字符串Q选项中,以反斜线”开头的是转义字符。因此B选项正确。7、B【解析】A选项定义了一个整型;C选项定义了一个字符串;D选项定义了一个布尔型变量:B选项中的f;d不符合标识符规范,因而选B08、B9、C10、C六、函数/函数指针1、B2、D【解析】字符串的比较规则是对两个字符串自左至右逐个字符相比(按ASell码值大小比较),直到出现不同的字符或遇到'0'为止,相等,则返回0,否则返回第一个不等字符串的ASCIl码的差值。3、B4、B5、A6、C7、B8、D9、B【解析】首先n=fun(3),3被当作参数传递进去,这就进行了一次调用,3当做参数传进去后程序会执行这句elsereturnfun(k-l)+l;这就调用了第二次而参数是3-1也就是2。2被当做参数传进去后,程序会执行这句elsereturnfun(k-l)+l;这就调用了第三次,而参数是2-1也就是I01被当做参数传进去后,程序会执行这句elseif(k=l)returnl;不再递归调用,所以最终结果为3次。10、B【解析】该题考查函数的宏定义及三目运算符。表达式10*MIN(ij)利用宏展开后为:10*i<jij,即100<1510:15,其值为15,然后将15赋给k。七、指针IsC2、B【解析】本题考查对一维数组的赋值。选项B)中,y5说明数组中有5个元素,但却给它赋了6个值,数组溢出所以是错误的。3、C4、B5、A6、C【解析】本题中相当于定义了一个二维数组intp4,标识符P是一个指针,指向一个含有4个元素的一维数组。7、A【解析】函数的形式参数之间以逗号”隔开,且每个变量均需说明其数据类型,圆括号后面不能有分号。只有选项A)符合要求。8、A9、B【解析】在使用scanf函数时要注意,在用格式输入字符时,分隔符(空格符、制表符(Tab键)、回车符)和转义字符都将作为有效字符进行输入。题目中要求以字符形式输入三个数据,空格、回车符、Tab键均会被视为有效字符赋给对应变量,所以字母ABC之间不能有分隔符

    注意事项

    本文(安徽工业大学计算机C语言选择题(共六卷).docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开