版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言程序设计知到智慧树期末考试答案题库2024年秋西安工商学院当函数实参中使用指针变量时,形参变量也必须使用指针变量。()
A:错B:对
答案:A:错变量根据其作用域的范围可以分作局部变量和全局变量。()
A:对B:错
答案:对有如下程序段:inti,j=2,k,*p=&i;k=*p+j;这里出现的两个“*”号,含义是一样的。()
A:对B:错
答案:错一个变量的指针就是该变量的地址。()
A:错B:对
答案:对数组可以动态指定大小。()
A:对B:错
答案:A:对指针变量里存放的是地址值,因此指针变量只能是int型的。()
A:对B:错
答案:错如有说明:inta[10],*p=a;那么*a与p[0]等价。()
A:错B:对
答案:B:对数组名的规定与变量名不相同。()
A:错B:对
答案:错一个C源程序可以由多个函数组成。()
A:错B:对
答案:对如有说明:intb[10],*p=b;表明在使用时b与p就完全等价了。()
A:错B:对
答案:错若运行时给变量x输入10,main(){intx,y;scanf(“%d”,&x);y=x>12?x+10:x-10;printf(“%d\n”,y);}则以上程序的运行结果是()。
A:2
B:10
C:20
D:0
答案:0以下叙述中正确的是()。
A:break语句只能用在循环体内和switch语句体内
B:在循环体内使用break语句和continue语句的作用相同
C:break语句只能用于switch语句体中
D:continue语句的作用是:使程序的执行流程跳出包含它的所有循环
答案:break语句只能用在循环体内和switch语句体内若有以下数组说明,inta[10]={1,5,4,10,2,7,8,11,3,6},inti=5;则a[a[i]]元素数值是()。
A:5
B:11
C:2
D:7
答案:B以下是if语句的基本形式:if(表达式)语句其中“表达式”()。
A:必须是逻辑表达式或关系表达式
B:必须是逻辑表达式
C:必须是关系表达式
D:可以是任意合法的表达式
答案:可以是任意合法的表达式变量定义如下:intx;floaty;以下输入语句正确的是()。
A:scanf("%f%f",&y,&x);
B:scanf("%f%d",y,x);
C:scanf("%5.2f%2d",&y,&x);
D:scanf("%f%d",&y,&x);
答案:D:scanf("%f%d",&y,&x);若已定义a为int型变量,则()是对指针变量p的正确说明和初始化。
A:int*p=a;
B:intp=&a;
C:int*p=&a;
D:int*p=*a;
答案:int*p=&a;已知字母A的ASCⅡ代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是()。
A:isalpha(kk)&&(kk<91)
B:kk>='A'&&kk<='Z'
C:(kk+32)>='a'&&(kk+32)<='z'
D:!(kk>='A'‖kk<='Z')
答案:!(kk>='A'‖kk<='Z')以下关于C语言的叙述中正确的是()。
A:在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致
B:C语言中的变量可以在使用之前的任何位置进行定义
C:C语言的数值常量中夹带空格不影响常量值的正确表示
D:C语言中的注释不可以夹在变量名或关键字的中间
答案:在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致以下叙述正确的是()。
A:用do-while语句构成的循环,在while后的表达式为零时结束循环。
B:do-while语句构成的循环不能用其它语句构成的循环来代替
C:do-while语句构成的循环只能用break语句退出
D:用do-while语句构成的循环,在while后的表达式为非零时结束循环
答案:文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作voidfun(intx,int*y){printf("%d%d",x,*y);x=5;*y=6;}intmain(){intx=1,y=2;fun(y,&x);printf("%d%d",x,y);return0;}上述程序的运行结果是()。
A:5656
B:2162
C:2165
D:5662
答案:2162已知inta[3][2]={3,2,1};则表达式“a[0][0]/a[1][0]”的值是()。
A:3
B:错误的表达式
C:0
D:1
答案:3有以下程序main(){inti,j,x=0;for(i=0;i<2;i++){x++for(j=0;j<=3;j++){if(j%2)continue;x++}x++}printf(x=%d\n,x);}程序执行后的输出结果是()。
A:x=12
B:x=4
C:x=6
D:x=8
答案:x=8阅读以下程序:#include<stdio.h>intmain(){inti,a[]={0,0,0,0,0};for(i=1;i<=4;i++){a[i]=a[i-1]*2+1;printf("%d",a[i]);}}运行后的输出结果是()。
A:1234
B:0000
C:13715
D:1111
答案:C如果在一个函数中的复合语句中定义了一个变量,以下正确的说法是()。
A:该变量只在该复合语句中有效
B:该变量在主函数中有效
C:该变量在本程序范围内均有效
D:该变量在该函数中有效
答案:该变量只在该复合语句中有效阅读下面的程序:main({chara;a=getchar();switch(a){case65:printf("%c",’A’);break;case66printf("%c",’B’);break;default:printf("%s\n","other");}}当程序在执行时,如果输入的是’A’,则输出结果为()。
A:other
B:Aother
C:A
D:AB
答案:C:A设有数组定义:chararray[]="China";则数组array所占的空间为()
A:不确定的值
B:5个字节
C:4个字节
D:7个字节
答案:5个字节执行语句m=5;n=3;n=(!m)?m/n:m%n;后n的值为()。
A:1
B:0
C:3
D:2
答案:2设a为整型变量,初值为6,执行完语句a+=a-=a*a后,a的值是()。
A:60
B:-24
C:36
D:-60
答案:B:-24有如下嵌套的if语句if(a<b)if(a<c)k=a;elsek=c;if(b<c)k=b;elsek=c;以下选项中与上述if语句等价的语句是()。
A:k=(a<b)?((a<c)?a:c):((b<c)?b:c);
B:k=(a<b)?((b<c)?a:b)((b>c)?b:c);
C:k=(a<b)?a:b;k=(b<c)?b:c;
D:k=(a<b)?a:b;k=(a<c)?a:c;
答案:k=(a<b)?((a<c)?a:c):((b<c)?b:c);有以下程序main(){intk=5,n=0;while(k>0){switch(k){default:break;case1:n+=k;case2:case3:n+=k;}k--;}printf("%d\n",n);}程序运行后的输出结果是().
A:4
B:6
C:7
D:0
答案:6有以下程序#include<stdio.h>main(){intx;scanf(“%d”,&x);if(x<=3);elseif(x!=10)printf(“%d\n”,x);}程序运行时,输入的值在哪个范围才会有输出结果()。
A:大于3且不等于10的整数
B:不等于10的整数
C:大于3或等于10的整数
D:小于3的整数
答案:大于3且不等于10的整数阅读以下程序:#include<stdio.h>intmain(){inta[]={1,2,3,4,5},i;for(i=1;i<5;i++){printf("%d",a[i]-a[i-1]);}return0;}程序的输出结果为()。
A:2345
B:11111
C:1234
D:1111
答案:1111以下对结构体类型变量td的定义中,错误的是()。
A:struct
{
intn;
floatm;
}aa;
structaatd;
B:typedefstructaa
{
intn;
floatm;
}AA;
AAtd;
C:structaa
{
intn;
floatm;
}td;
structaatd;
D:struct
{
intn;
floatm;
}td;
答案:struct{intn;floatm;}aa;structaatd;已知intx=10,y=20,z=30;if(x>y)z=x;x=y;y=z;以上语句执行后x,y,z的值是()。
A:x=10,y=20,z=30
B:x=20,y=30,z=30
C:x=20,y=30,z=20
D:x=20,y=30,z=10
答案:x=20,y=30,z=30有以下程序#include<stdio.h>intmain(){inty=5;while(y--);printf(”y=%d\n”,y);return0;}程序执行后的输出结果是()
A:y=0
B:while构成无限循环
C:y=-1
D:y=1
答案:y=-1以下关于typedef的叙述错误的是()。
A:用typedef可以为各种类型说明一个新名,但不能用来为变量说明一个新名
B:用typedef可以增加新类型
C:用typedef为类型说明一个新名,通常可以增加程序的可读性
D:typedef只是将已存在的类型用一个新的名字来代表
答案:用typedef可以增加新类型以下fun函数的功能是:找出具有N个元素的一维数组中的最大值,并作为函数值返回。intfun(inta[N]){inti,k=0;for(i=0;i<N;i++)if(a[i]>a[k])k=i;return___________;}空白处,应填入()。
A:a[k]
B:a[i]
C:a[N]
D:a[0]
答案:a[k]若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是()
A:&*a,&a,*point
B:a,point,*&a
C:*&point,*point,&a
D:&a,&*point,point
答案:&a,&*point,pointinti=0,s=0;do{if(i%2==0){i++;continue;}i++;s+=i;}while(i<5);有以上程序定义,则程序运行后s的值是()。
A:12
B:8
C:6
D:10
答案:6合法的C语言标识符是()。
A:2a
B:a+b
C:sum
D:default
答案:C:sum#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf(“a=%d,b=%d\n”,a,b);}程序的运行结果是()。
A:a=2,b=1
B:a=2,b=2
C:a=1,b=1
D:a=1,b=0
答案:B以下定义语句中正确的是()。
A:doublea=0.0,b=1.1;
B:floata=1,*b=&a,*c=&b;
C:inta=b=0;
D:charA=65+1,b='b';
答案:charA=65+1,b='b';C语言中的标识符只能由字母、数字和下划线组成,且第一个字符是()。
A:可以是字母、数字和下划线任意一种
B:必须为下划线
C:必须为字母或下划线
D:必须为字母
答案:必须为字母或下划线阅读以下程序:#include<stdio.h>intmain(){charstr[][20]={"china","beijing","shanghai"};inti;for(i=0;i<3;i++){printf("%s-",(str[i]+i));}return0;}程序的输出结果为()。
A:china-beijing-shanghai
B:china-eijing-hanghai-
C:china-eijing-anghai-
D:china-eijing-anghai
答案:A:china-beijing-shanghai-已知:chara;intb;floatc;doubled;执行语句c=a+b+c+d;后,变量c的数据类型是()。
A:double
B:int
C:float
D:char
答案:floatmain(){inta=1,b;for(b=1;b<=10;b++){if(a>=8)break;if(a%2==1){a+=5;continue;}a-=3;}printf("%d\n",b);}程序运行后的输出结果是()。
A:6
B:3
C:4
D:5
答案:4voidmain(){inta=1,b=0;if(--a)b++;elseif(a==0)b+=2:elseb+=3:printf("%d\n",b);}程序运行后的输出结果是()。
A:0
B:3
C:2
D:1
答案:2有以下程序:intfun(intn);intfun(intn){if(n==2)return1;returnfun(n-1)+1;}intmain(){printf("%d\n",fun(5));return0;}下列程序的运行结果是:()
A:0
B:5
C:1
D:4
答案:4设有定义语句inta[2][3];则以下叙述不正确的是()。
A:a[0]代表一个地址常量
B:a数组可以看成是由a[0]、a[1]两个元素组成的一维数组
C:元素a[0]是由3个整型元素组成的一维数组
D:可以用a[0]=6;的形式给数组元素赋值
答案:可以用a[
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论