版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言程序设计-案例驱动轻松掌握知到智慧树章节测试课后答案2024年秋山东管理学院第一章单元测试
C语言中规定:在一个源程序中main函数的位置()。
A:可以任意
B:必须在系统调用的库函数的后面
C:必须在最开始
D:必须在最后
答案:可以任意
一个C语言程序是由()。
A:若干过程组成
B:一个主程序和若干个子程序组成
C:若干子程序组成
D:函数组成
答案:函数组成
C++、Java以及C#都源自于C语言。()
A:错B:对
答案:对计算机内部运算不使用的数是()。
A:二进制数
B:八进制数
C:十进制数
D:十六进制数
答案:八进制数
;十进制数
;十六进制数
不能将高级语言编写的源程序转换为目标程序的是()。
A:链接程序
B:编译程序
C:WORD字处理程序
D:网络程序
答案:链接程序
;WORD字处理程序
;网络程序
第二章单元测试
PC机中,’\n'在内存占用的字节数是()
A:1
B:3
C:2
D:4
答案:1
在以下一组运算符中,优先级最低的运算符是()
A:!=
B:+
C:=
D:*
答案:=
设ch是char型变量,其值为'A’,则表达式ch=(ch>='A'&&ch<=‘z’)?(ch+32):ch的值是()
A:Z
B:z
C:A
D:a
答案:a
要为字符型变量a赋初值,下列语句中哪一个是正确的()。
A:chara=’3’
B:chara="3"
C:chara=*
D:chara=%
答案:chara=’3’
以下用户标识符中,不合法的是()
A:123
B:nit
C:int
D:a+b
答案:123
;int
;a+b
第三章单元测试
下列语句中符合C语言语法的赋值语句是()。
A:a=7+b+c=a+7;
B:a=7+b,c=a+7;
C:a=7+b,b++,a+7;
D:a=7+b++=a+7;
答案:a=7+b,c=a+7;
以下程序输出结果是
main()
{intm=5;
if(m++>5)printf("%d\n",m);
elseprintf("%d\n",m--);}()
A:7
B:4
C:5
D:6
答案:6
若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()。
A:a<>0
B:!a
C:a=0
D:a
答案:a
如果c为字符型变量,判断c是否为空格不能使用(假设已知空格ASCII码为32)()。
A:if(c=='32')
B:if(c=='\40')
C:if(c==32)
D:if(c=='')
答案:if(c=='32')
下列叙述中正确的是()。
A:在switch语句中,不-定使用break语句
B:break语句只能用于switch语句
C:在switch语句中必须使用default
D:break语句必须与switch语句中的case配对使用
答案:在switch语句中,不-定使用break语句
表达式:10!=9的值是()。
A:true
B:1
C:非零值
D:0
答案:1
能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是()。
A:a>=0|a<=10
B:a>=10ora<=0
C:a>=10‖a<=0
D:a>=10&&a<=0
答案:a>=10‖a<=0
有以下程序
main()
{inta,b,c=246;
a=c/100%9;
b=(-1)&&(-1);
printf("%d,%d\n",a,b);
}
输出结果是()。
A:3,2
B:2,1
C:4,3
D:2,-1
答案:2,1
若变量c为char类型,能正确判断出c为小写字母的表达式是()。
A:(c>='a')||(c<='z')
B:(c>='a')&&(c<='z')
C:('a'<=c)and('z'>=c)
D:'a'<=c<='z'
答案:(c>='a')&&(c<='z')
下面程序的输出是
main()
{inta=-1,b=4,k;
k=(a++<=0)&&(!(b--<=0));
printf("%d%d%d%\n",k,a,b);}()
A:003
B:012
C:103
D:112
答案:103
第四章单元测试
若i为整型变量,则以下循环执行次数是
for(i=2;2==0;)printf("%d",i--);()
A:1次
B:2次
C:0次
D:无限次
答案:0次
C语言中while和do-while循环的主要区别是()。
A:while的循环控制条件比do-while的循环控制条件严格
B:do-while的循环体不能是复合语句
C:do-whil的循环体至少无条件执行一次
D:do-while允许从外部转到循环体内
答案:do-whil的循环体至少无条件执行一次
下面有关for循环的正确描述是()。
A:for循环体语句中,可以包含多条语句,但要用花括号括起来
B:在for循环中,不能用break语句跳出循环体
C:for循环只能用于循环次数已经确定的情况
D:for循环是先执行循环体语句,后判定表达式
答案:for循环体语句中,可以包含多条语句,但要用花括号括起来
语句while(!e);中的条件!e等价于()。
A:e!=0
B:~c
C:e==0
D:e!=1
答案:e==0
t为int类型,进入下面的循环之前,t的值为0
while(t=l)
{……}
则以下叙述中正确的是()
A:循环控制表达式的值为1
B:循环控制表达式的值为0
C:其他说法都不对
D:循环控制表达式不合法
答案:循环控制表达式的值为1
有以下程序
main()
{inti,s=0;
for(i=1;i<10;i+=2)s+=i+1;
printf(“%d\n”,s);
}
程序执行后的输出结果是()。
A:自然数1~9的累加和
B:自然数1~10中的偶数之和
C:自然数1~10的累加和
D:自然数1~9中的奇数之和
答案:自然数1~10中的偶数之和
以下程序段的输出结果是
intx=3;
do
{printf("%3d",x-=2);
}while(!(--x));()
A:30
B:死循环
C:1-2
D:1
答案:1-2
以下程序中,while循环的循环次数是
main()
{inti=0;
while(i<10)
{if(i<1)continue;
if(i==5)break;
i++;
}
......
}()
A:死循环,不能确定次数
B:1
C:10
D:6
答案:死循环,不能确定次数
有以下程序
main()
{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:4
B:6
C:5
D:3
答案:4
有以下程序
main()
{inti;
for(i=0;i<3;i++)
switch(i)
{case1:printf("%d",i);
case2:printf("%d",i);
default:printf("%d",i);
}
}
执行后输出结果是()。
A:011122
B:012
C:012020
D:120
答案:011122
第五章单元测试
以下定义语句中,错误的是()。
A:inta[]={1,2};
B:chara[]={“test”};
C:intn=5,a[n];
D:chars[10]={“test”};
答案:intn=5,a[n];
以下对一维数组a进行正确初始化的是()。
A:inta[10]={10*2};
B:inta[]={0};
C:inta[10]=(0,0,0,0,0);
D:inta[10]={};
答案:inta[]={0};
以下对二维数组a进行正确初始化的是()。
A:inta[2][]={1,2,3,4,5,6};
B:inta[2][3]={{1,2},{3,4},{5,6}};
C:inta[][3]={1,2,3,4,5,6};
D:inta[2][]={{1,2},{3,4}};
答案:inta[2][]={{1,2},{3,4}};
在定义inta[5][4];之后,对a的引用正确的是()。
A:a[5][0]
B:a[2][4]
C:a[1,3]
D:a[4][3]
答案:a[4][3]
以下给字符数组str定义和赋值正确的是()。
A:charstr[10];strcpy(str,“abcdefghijkl”);
B:charstr[10];str={“China!”};
C:charstr[10]={“abcdefghijkl”};
D:charstr[]={“China!”};
答案:charstr[]={“China!”};
执行语句:inta[][3]={1,2,3,4,5,6};后,a[1][0]的值是4。()
A:对B:错
答案:对当接受用户输入的含有空格的字符串时,应使用getchar()。()
A:对B:错
答案:错定义:chararray[]=”China”;则数组array所占的存储空间是5个字节。()
A:错B:对
答案:错定义:chararray[10]=”China”;则数组array所占的存储空间是10个字节。()
A:对B:错
答案:对执行语句:inta[5][6];后,数组a中的第7个元素是a[1][0]。()
A:错B:对
答案:对
第六章单元测试
#include<stdio.h>
intf(intx);
main()
{
intn=1,m;
m=f(f(f(n)));
printf("%d\n",m);
}
intf(intx)
{returnx*2;}
程序运行后的输出结果是()。
A:4
B:2
C:1
D:8
答案:8
#include<stdio.h>
intfun(intx,inty)
{
if(x!=y)
return((x+y)/2);
elsereturn(x);:
}
main()
{
inta=4,b=5,c=6;
printf("%d\n",fun(2*a,fun(b,c)));
}
程序运行后的输出结果是()。
A:12
B:6
C:8
D:3
答案:6
#include<stdio.h>
intf(intx,intу)
{
return((y-x)*x);
}
main()
{
inta=3,b=4,c=5,d;
d=f(f(a,b),f(a,c));
printf("%d\n",d);
}
程序运行后的输出结果是()。
A:8
B:9
C:10
D:7
答案:9
#include<stdio.h>
intfun(inta,intb)
{
returna+b;
}
main()
{
intx=6,y=7,z=8,r;
r=fun(fun(x,y),z--);
printf("%d\n",r);
}
程序运行后的输出结果是().
A:15
B:21
C:31
D:20
答案:21
以下叙述中正确的是()
A:实用的C语言源程序总是由一个或多个函数组成。
B:用户自己定义的函数只能调用库函数。
C:在C语言的函数内部,可以定义局部嵌套函数。
D:不同函数的形式参数不能使用相同名称的标识符。
答案:实用的C语言源程序总是由一个或多个函数组成。
以下叙述中正确的是()
A:如果函数带有参数,就不能调用自己
B:函数体中的语句不能出现对自己的调用。
C:函数名代表该函数的入口地址。
D:所有函数均不能接受函数名作为实参传入
答案:函数名代表该函数的入口地址。
以下叙述中正确的是()
A:在函数体中只能出现一次return语句。
B:函数名允许用数字开头。
C:函数调用时,不必区分函数名称的大小写
D:调用函数时,函数名必须与被调用的函数名完全一致。
答案:调用函数时,函数名必须与被调用的函数名完全一致。
设有某函数的说明为:int*func(inta[10],intn);则下列叙述中,正确的是()
A:func的函数体中不能对a进行移动指针(如a++)的操作。
B:说明中的a[10]写成a或*a效果完全一样。
C:形参a对应的实参只能是数组名。
D:只有指向10个整数内存单元的指针,才能作为实参传给a。
答案:说明中的a[10]写成a或*a效果完全一样。
以下关于C语言函数参数传递方式的叙述正确的是()
A:数据只能从形参单向传递给实参。
B:数据可以在实参和形参之间双向传递。
C:数据只能从实参单向传递给形参
D:C语言的函数参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用。
答案:数据只能从形参单向传递给实参。
第七章单元测试
有以下定义chara[10],*b=a;不能给数组a输入字符串的语句是()。
A:gets(a[0])
B:gets(b);
C:gets(a)
D:gets(&a[0]);
答案:gets(a[0])
inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;b=p[5];则b中的值是()。
A:9
B:5
C:6
D:8
答案:9
voidmain(){
int*p,*q,a,b;
p=&a;
printf(“inputa:”);
scanf(“%d”,*p);
……
}
以上程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是()。
A:*p表示的是指针变量p的地址
B:*p表示的是指针变量p的值
C:*p只能用来说明p是一个指针变量
D:*p表示的是变量a的值,而不是变量a的地址
答案:*p表示的是变量a的值,而不是变量a的地址
以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是()。
A:chars[10];s="abcdefg";
B:chart[]="abcdefg",*s=t;
C:chars[10]="abcdefg";
D:chars[10];strcpy(s,"abcdefg");
答案:chars[10];s="abcdefg";
以下程序段正确的是()。
A:char*p;
scanf("%s",p);
B:charstr[20];
scanf("%s",&str[2]);
C:charstr[20];
scanf("%s",&str);
D:charstr[20],*p=str;
scanf("%s",p[2]);
答案:charstr[20];
scanf("%s",&str[2]);
变量指针指向该变量的地址。()
A:对B:错
答案:对定义inta[10],*p=a,则p+6表示元素a[6]的地址。()
A:错B:对
答案:对定义chara[6],*b=a;则gets(&a[0]);不能给数组a输入字符串。()
A:对B:错
答案:错chars[10];s=”abcd”;语句在编译时系统会报错。()
A:对B:错
答案:对return*p;的返回值是变量p的地址。()
A:对B:错
答案:错
第八章单元测试
#include<stdio.h>
typedefstruct{intb;intpi;)A;
voidf(Ac)
{
intj;
c.b+=1;
c.p+=2;
}
main()
{
inti;
Aa={1,2};
f(a);
printf("%d,%d\n",a.b,a.p);
}
程序运行后的输出结果是()。
A:2,4
B:2,3
C:1,4
D:1,2
答案:1,2
structcomplex
{intreal,unreal;}data1={1,8},data2;则以下赋值语句中错误的是()。
A:data2.real=đata1.unreal;
B:data2=(2,6);
C:data2.real=data1.real;
D:data2=data1;
答案:data2=(2,6);
#include<string.h>
typedefstruct{charname[9];charsex;intscore[2];}STU;
STUf(STUa)
{
STUb={"Zhao",‘m’,85,90};
inti;
strcpy(a.name,);
a.sex=b.sex;
for(i=0;i<2;i++)a.score[i]=b.score[i];
returna;
}
main()
{
STUc={"Qian",‘f’,95,92},d;
d=f(c);
printf(“%s,%c,%d,%d”,,d.sex,d.score[0],d.score[1]);
printf(“%s,%c,%d,%d\n”,,c.sex,c.score[0],c.score[1]);
程序运行后的输出结果是()。
A:zhao,m,85,90,Qian,f,95,92
B:Qian,f,95,92,zhao,m,85,90
C:zhao,m,85,90,zhao,m,85,90
D:Qian,f,95,92,Qian,f,95,92
答案:zhao,m,85,90,Qian,f,95,92
有以下程序#include<stdio.h>
structS{inta;intb;};
main()
{structSa,*p=&a;
a.a=99;
printf("%d\n",___);
}
程序要求输出结构体中成员a的数据,以下不能填入横线处的内容是()
A:p->a
B:a.a
C:(*p).a
D:*p.a
答案:*p.a
设有如下的说明和定义
struct{
inta;
char*s;
}x,*p=&x;
x.a=4;
x.s="hello";
则以下叙述中正确的是()
A:语句++
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑施工反垄断合同范本
- 农药生产架电施工合同
- 涂料施工销售渠道合同
- 林业开发供货施工合同范本
- 餐饮与企业合同范例
- 饭店公司合伙合同范例
- 公路工程项目合同进度检查内容表格
- 集体合同约定的最低工资和当地最低工资标准
- 门诊医疗器械销售合同范例
- 赠与合同范例15篇
- (完整word版)首件检验管理制度
- 线路工程灌注桩施工作业指导书施工方案
- 重力坝的分缝与止水
- 三重管高压旋喷桩施工工艺规程与施工方案
- 个体诊所药品清单
- PFMEA的严重度SOD的评分和优先级别
- 国网基建国家电网公司输变电工程结算管理办法
- 100道递等式计算(能巧算得要巧算)
- 中国地图含省份信息可编辑矢量图
- 路政运政交通运输执法人员考试题库
- 企业技术标准化管理
评论
0/150
提交评论