C语言程序设计-2024学习通超星期末考试答案章节答案2024年_第1页
C语言程序设计-2024学习通超星期末考试答案章节答案2024年_第2页
C语言程序设计-2024学习通超星期末考试答案章节答案2024年_第3页
C语言程序设计-2024学习通超星期末考试答案章节答案2024年_第4页
C语言程序设计-2024学习通超星期末考试答案章节答案2024年_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计-2024学习通超星期末考试章节答案2024年第11课:字符处理函数strcpy(str1,str2)的功能是把字符串1复制字符串2的后面.

答案:对第11课:下列的初始化的方式是正确的吗?st[10];st="string";

答案:错第11课:设有数组定义:chararray[]="hello";则数组array所占的内存空间为5字节.

答案:错第11课:按内存排列顺序,数组chara[2]中的所有元素是a[0]和a[1].

答案:对第11课:有如下语句:char

A[]={"Iamastudent"};该字符串的长度是____,A[0]=____。

答案:14;I第11课:设chars[]={"E____mail"};,则执行printf("%d\n",strlen(s));后输出的值是____。(strlen(s)函数用于统计字符串中字符个数)

答案:6第11课:符号”a”是____,’a’是____。

答案:字符串;字符在C语言中,各种类型的整型数据在内存中都占2个字节。

答案:错C程序中有调用关系的所有函数必须放在同一个源程序文件中。

答案:错for循环可以用于循环次数不确定而给出循环条件的情况下.

答案:对进行宏定义时,宏名推荐使用大写字母表示。

答案:对数组可以作为函数的实参和形参。

答案:对语句if(a>b){printf("%d",a);}else{printf("%d",b);}可以用条件表达式a>b?a:b取代。

答案:错在循环嵌套中,使用break语句只能跳出本级循环.

答案:对在循环嵌套中,使用break语句可以跳出所有循环.

答案:错静态局部变量在整个程序运行期间都不释放.

答案:对在主调函数中,必须要对被调用函数进行类型说明,否则在编译时会出现错误.

答案:错引用数组元素时,下标可以是整型表达式或整型常量。

答案:对inta[3][4]={{1},{5},{9}};它的作用是将数组各行第一列的元素赋初值,其余元素值为0。

答案:对定义intd[]={1,2,3,4},x,*m=d;,则执行x=*m后,x的值是1.

答案:对数组名作为函数调用时的实参,实际上传递给形参的是数组全部元素的值.

答案:错设有数组定义:chararray[]="hello";则数组array所占的内存空间为5字节.

答案:错若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变

答案:对intx=2;z=x+1;则z的值为4.

答案:错字符处理函数strcpy(str1,str2)的功能是把字符串1复制字符串2的后面.

答案:对do...while循环的循环体至少执行一次,而不论while表达式的值是"真"或"假".

答案:对在C程序中,逗号运算符的优先级最低

答案:对某些情况下,在主调函数中可以缺省对被调用函数的说明.

答案:对在while循环中允许使用嵌套循环,但只能是嵌套while循环.

答案:对已知a=3,b=4,c=5.则逻辑表达式(a+b>c)&&(b==c)值为0.

答案:对C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线

答案:对C语言中"%"运算符的运算对象必须是整型.

答案:对按内存排列顺序,数组chara[2]中的所有元素是a[0]和a[1].

答案:对如果需要向函数内传递多个值,用数组和用指针效果是一样的.

答案:对一个include命令只能指定1个被包含的文件。

答案:对数组整体可以参加各种数学运算,数组元素也可以参加各种数学运算.

答案:错数组整体不可以参加各种数学运算,数组元素可以参加各种数学运算.

答案:对for循环语句不能用于循环次数未知的情况下.

答案:错进行宏定义时,宏名必须使用大写字母表示。

答案:错语言数组的下标从0开始.

答案:对在while循环中允许使用嵌套循环,可以嵌套while和for循环语句.

答案:对C语言本身没有输入输出语句

答案:对有如下说明:int

a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是*(p+8).

答案:对宏定义不是C语句,不必在行末加分号.

答案:对在C语言中,程序总是从第一个函数开始执行,最后一个函数结束.

答案:错C语言中引用数组元素的方括号可以用花括号代替.

答案:错执行continue语句并不能使整个循环终止.

答案:对for循环语句的三个表达式不能同时省略.

答案:错已知x=3,y=1,执行分支语句if(x>y){t=x;x=y;y=t;}else{printf("error!");}后,结果为error!.

答案:错a=b+(c=6)是一个合法的赋值表达式。

答案:对在一个源程序中,main函数的位置可以在任意合适位置。

答案:对typedef可以定义生成新的数据类型.

答案:错计算机编译系统对宏定义在编译时进行语法检查.

答案:错数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的地址.

答案:对数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的值.

答案:错定义一维数组的形式为:类型说明数组名[表达式],其中表达式可以是正整型常量表达式、字符常量表达式.

答案:对设u=1,v=2,w=3,则逻辑表达式u||v-w的值为0.

答案:错一个C程序中只能有一个主函数。

答案:对一个C程序只能由一个主函数组成。

答案:错在定义结构体变量时不允许对它赋初值。

答案:错下列的初始化的方式是正确的吗?st[10];st="string";

答案:错带参数的宏定义不是进行简单的字符串替换,还要进行参数替换.

答案:对引用数组元素时,数组元素下标必须是整型常量.

答案:错已知a=3,b=4,c=5,则逻辑表达式a||b+c的值为0.

答案:错表达式(j=3,j++)的值是4.

答案:错设有定义:inta[10],*p;

则下列的语句是等价的。

p=&a[0];

p=a;

答案:对每次调用函数时,都要对静态局部变量重新进行初始化。

答案:错对任何一个二维数组的元素,都可以用数组名和两个下标唯一地加以确定。

答案:对do-while循环由do开始,while结束,在while(表达式)后面不能加分号。

答案:错continue语句对于while和do-while循环来说,意味着转去计算while表达式。

答案:对逻辑表达式4>2&&1的值为1。

答案:对printf函数的一般格式为:printf(格式控制,输出表列)。

答案:对如果被包含文件中有全局静态变量,它们在用#include命令的源文件中有效.

答案:对在一个函数中定义的局部变量可以被另一个函数调用.

答案:错C语言中三种基本结构:顺序、选择、循环。

答案:对在do-while循环中,当while表达式为"假"时,循环就停止了。

答案:对在C程序中,注释说明只能位于一条语句的后面

答案:错对于不同类型的数据,若想合成一个有机的整体,可以引用结构体进行定义。

答案:对简单函数的返回值,只能返回一个数据。

答案:对数组名与指针变量是相互等价的.

答案:对函数调用时,要求实参与形参的个数可以不一致,对应类型必须一致.

答案:错函数调用时,要求实参与形参的个数必须一致,对应类型可以不一致.

答案:错函数调用时,要求实参与形参的个数必须一致,对应类型一致.

答案:对数组的首地址是第一个数组元素的地址.

答案:对宏名有类型,其参数也有类型.

答案:错宏替换在运行程序时进行,不占用运行时间。

答案:对宏替换在运行程序时进行,占用运行时间。

答案:错#define和printf都不是C语句。

答案:对while和do…while循环不论什么条件下它们的结果都是相同的

答案:错定义inta[]={1,2,3,4},y;,则执行y=a[0];后,y的值是2、

答案:错没有初始化的数值型静态局部变量的初值是不确定的值。

答案:对数值型数组整体不参加数据处理(即不参加各种运算),参加数据处理的只能是数组的元素。

答案:对若有说明intc;则while(c=getchar()){};没有语法错误。

答案:对函数调用时,要求实参与形参的个数必须一致,对应类型可以不一致。

答案:错数组整体可以参加各种数学运算,数组元素也可以参加各种数学运算。

答案:错在C程序中,注释说明只能位于一条语句的后面。

答案:错语言数组的下标从0开始。

答案:对do-while循环由do开始,while结束,在while表达式后面不能加分号。

答案:错定义一维数组的形式为:类型说明数组名[表达式],其中表达式可以是正整型常量表达式、字符常量表达式。

答案:对数组的首地址是第一个数组元素的地址。

答案:对C语言规定,C语言由三种基本结构组成,分别是____结构、____结构和____结构。

答案:循环;分支有如下语句:charA[]={"Iamastudent"};该字符串的长度是____,A[0]=____。

答案:14;I执行下列语句inta=8;a+=2;后,a的值是____。

答案:10以下函数的功能是:求两个数中的较大者,请填空:intmax(inta,intb){

intc;

c=a>b?a:b;____;//返回数据}

答案:return(c在定义函数时,函数名后面括弧中的变量名称为____,在主调函数中调用一个函数时,函数名后面的括弧中的参数称为____。(可选项,形参;实参)

答案:形参;实参若函数调用语句为f(a,b,1);,则函数f的参数个数是____。

答案:3C语言中普通整型变量的类型说明符为____,在内存中占____字节,无符号普通整型的数据范围是____。

答案:int;2;0-65535字符串"a"的占内存长度是____字节。

答案:2第15课:如果有下面的定义和赋值,则使用(

)不可以输出n中data的值。

struct

SNode{unsignedid;

intdata;

}n,*p;p=&n;(2.0)

答案:(*p).data第3课:设有定义:intx=7,y=12;,则以下表达式值为3的是(

)

答案:(y%=x)-(x%=5)以下选项中叙述正确的是(

)

答案:C语言的标识符可分为关键字、预定义标识符和用户标识符三类C语言中,运算对象必须是整型数的运算符是(

)

答案:%C语言程序的模块化是通过以下哪个选项实现的(

)

答案:函数C语言规定,在一个源程序中,main主函数的位置是在(

)

答案:可以在任意位置字符串需要额外添加一个字符作为结束位,则字符串"abc"在内存中占据的字节个数为(

)

答案:4以下叙述正确的是(

)

答案:结构化程序的三种基本结构是循环结构、选择结构、顺序结构在C程序中,若对函数类型未加说明,则函数的隐含类型为(

)

答案:intC语言中while和do-while循环的主要区别是(

)

答案:do-while的循环体至少无条件执行一次以下程序的输出结果是(

)#includeintmain(){

inta=-1,b=4,k;

k=(++a<0)&&!(b--<0);

printf("%d,%d,%d\n",K,a,b);}

答案:0,0,4第12课:如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。

答案:对第12课:C程序中有调用关系的所有函数必须放在同一个源程序文件中。

答案:错第12课:函数调用时,要求实参与形参的个数可以不一致,对应类型必须一致.

答案:错第12课:数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的地址.

答案:对第12课:函数调用时,要求实参与形参的个数必须一致,对应类型可以不一致.

答案:错第12课:在一个函数中定义的局部变量可以被另一个函数调用.

答案:错第12课:函数的返回值可以通过函数中的return语句获得。

答案:对第12课:每次调用函数时,都要对静态局部变量重新进行初始化。

答案:错第12课:某些情况下,在主调函数中可以缺省对被调用函数的说明.

答案:对第12课:简单函数的返回值,只能返回一个数据。

答案:对第12课:函数调用时,要求实参与形参的个数必须一致,对应类型一致.

答案:对第12课:如果需要向函数内传递多个值,用数组和用指针效果是一样的.

答案:对第12课:静态局部变量在整个程序运行期间都不释放.

答案:对第12课:根据变量的作用域可将变量分为____和____,定义在函数内部的变量和函数的形参都是_____________变量。

答案:局部变量;全局变量;局部变量第12课:在定义函数时,函数名后面括弧中的变量名称为____,在主调函数中调用一个函数时,函数名后面的括弧中的参数称为____。(可选项,形参;实参)

答案:形参;实参第12课:以下正确的说法是(

)

答案:如果在一个函数中的复合语句中定义了一个变量,则该变量只在该复合语句中有效第12课:在一个函数中未指定存储类别的局部变量,其隐含的存储类别为(

)

答案:自动(auto)第12章:C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是(

)

答案:单向值传递第12课:函数调用strcat(strcpy(str1,str2),str3)的功能是(

)

答案:将串str2复制到串str1中后,再将串str3连接到串str1之后第12课:在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是(

)

答案:static第12课:C语言规定,程序中各函数之间(

)

答案:既允许直接递归调用,也允许间接递归调用第12课:以下不正确的说法为(

)

答案:在函数内的复合语句中定义的变量在本函数范围内有效第14课:宏定义不是C语句,不必在行末加分号.

答案:对第13课:在主调函数中,必须要对被调用函数进行类型说明,否则在编译时会出现错误.

答案:错第14课:进行宏定义时,宏名必须使用大写字母表示。

答案:错第14课:typedef可以定义生成新的数据类型.

答案:错第14课:#define和printf都不是C语句。

答案:对第14课:一个include命令可以指定多个被包含的文件。

答案:错第14课:带参数的宏定义不是进行简单的字符串替换,还要进行参数替换.

答案:对第14课:进行宏定义时,宏名推荐使用大写字母表示。

答案:对第14课:宏替换在运行程序时进行,占用运行时间。

答案:错第14课:如果被包含文件中有全局静态变量,它们在用#include命令的源文件中有效.

答案:对第14课:宏替换在运行程序时进行,不占用运行时间。

答案:对第13课:以下程序运行后的输出结果是____。voidfun(intx,inty){

intt;t=x;x=y;y=t;}main(

){

intx=4,y=5;

fun(x,y);

printf(“%d\n”,x);}

答案:5第13课:简单变量做函数实参时,它和对应形参之间的数据传递方式是单向____。

答案:值传递(数值传递第13课:所谓“指针”就是____。“&”运算符的作用是____。“*”运算符的作用是____。

答案:内存地址;取地址;访问指针指向的对象第13课:在调用一个函数的过程中,又调用另一个函数,这称为函数的____。

答案:嵌套(嵌套调用第13课:以下函数的功能是:求两个数中的较大者,请填空:

intmax(inta,intb)

{

intc;c=a>b?a:b;____;//返回数据

}

答案:returnc第13课:以下程序运行后的输出结果是____。voidfun(intx,inty){

x=x+y;

y=x-y;

x=x-y;}main(

){

intx=2,y=3;

fun(x,y);

printf(“%d\n”,x);}

答案:3第13课:请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。

____(double,double);

//函数预定义

main()

{

doublex,y;

scanf("%f%f",&x,&y);

printf("%f\n",max(x,y));

}

doublemax(doublea,doubleb)

{

return(a>b?a:b);

}

答案:doublemax第13章:C语言中函数返回值的类型是由(

)决定。

答案:调用函数的主调函数类型第13课:以下程序的运行结果是(

)#include#defineFUDGE(y)

2.84+y#definePR(a)

printf(“%d”,(int)(a))#definePRINT1(a)

PR(a);putchar(‘\n’)main(){intx=2;PRINT1(FUDGE(5)*x);}

答案:12第13课:下面程序的运行结果是()#defineADD(x)

x+xintmain(){intm=1,n=2,k=3;intsum=ADD(m+n)*k;printf(“sum=%d”,sum);}

答案:sum=10第13课:以下程序的运行结果是(

)

#include

f(inta[])

{

inti=0;

while(a[i]<=10){printf(“%4d”,a[i]);

i++;intmain(){inta[]={1,5,10,9,11,7};

f(a+1);

}

答案:5109第13课:以下程序的正确运行结果是(

)intmain(){inta=2,i;for(i=0;i<3;i++)

printf(“%4d”,f(a));}intf(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);}

答案:789第13课:执行下列程序后,输出的结果是(

)

inta=3,b=4;

voidfun(intx1,intx2)

{printf(″﹪d,﹪d\n″,x1+x2,b);}

intmain()

{inta=5,b=6;fun(a,b);}

答案:11,4第13课:下面程序的运行结果是(

)

intmain()

{inti=5;

printf(“%d\n”,sub(i));

}

intsub(intn)

{inta;if(n==1)return1;a=n+sub(n-1);

return(a);}

答案:15第13课:有以下函数定义:voidfun(intn,doublex)

{…………}下面函数调用正确的是(

)

答案:k=fun(10,12.5);第13课:若使用一维数组名作函数实参,则以下正确的说法是(

)

答案:必须在主调函数中说明实参数组的大小,且要赋值第9课:语言数组的下标从0开始.

答案:对计算机编译系统对宏定义在编译时进行语法检查.(1.0)

答案:错第7课:continue语句用于终止循环体的本次执行.

答案:对某些情况下,在主调函数中可以缺省对被调用函数的说明.(1.0)

答案:对第9课:数组可以作为函数的实参和形参。

答案:对在C程序中,%是只能用于整数运算的运算符。(1.0)

答案:对第15课:任何一个地址前缀*运算符后都等同于一个变量.

答案:对第11课:下列的初始化的方式是正确的吗?st[10];st="string";(1.0)

答案:错第9课:定义一维数组的形式为:类型说明数组名[表达式],其中表达式可以是正整型常量表达式、字符常量表达式.

答案:对continue语句用于终止循环体的本次执行.(1.0)

答案:对第3课:已知a=3,b=4,c=5.则逻辑表达式(a+b>c)&&(b==c)值为0.

答案:对continue语句对于while和do-while循环来说,意味着转去计算while表达式。(1.0)

答案:对函数调用时,要求实参与形参的个数必须一致,对应类型一致.(1.0)

答案:对数组整体不可以参加各种数学运算,数组元素可以参加各种数学运算.(1.0)

答案:对第2课:a=b+(c=6)是一个合法的赋值表达式。

答案:对第3课:设u=1,v=2,w=3,则逻辑表达式u||v-w的值为0.

答案:错第15课:在定义结构体变量时不允许对它赋初值。(1.0)

答案:错第6课:while和do…while循环不论什么条件下它们的结果都是相同的(1.0)

答案:错第15课:数组名与指针变量是相互等价的.(1.0)

答案:对第7课:执行continue语句并不能使整个循环终止.

答案:对第6课:while循环的循环体至少执行一次,而不论while表达式的值是"真"或"假".(1.0)

答案:错第14课:带参数的宏定义不是进行简单的字符串替换,还要进行参数替换.(1.0)

答案:对第15课:设有定义:inta[10],*p;

则下列的语句是等价的。

p=&a[0];

p=a;

答案:对第15课:指向某一变量的指针,就是该变量的内存地址.(1.0)

答案:对第10课:inta[3][4]={{1},{5},{9}};它的作用是将数组各行第一列的元素赋初值,其余元素值为0。(1.0)

答案:对C语言中引用数组元素的方括号可以用花括号代替.(1.0)

答案:错第9课:引用数组元素时,数组元素下标必须是整型常量.(1.0)

答案:错第7课:continue语句对于while和do-while循环来说,意味着转去计算while表达式。(1.0)

答案:对C程序中有调用关系的所有函数必须放在同一个源程序文件中。(1.0)

答案:错第15课:指向某一变量的指针,就是该变量的内存地址.

答案:对第1课:在C程序中,注释说明只能位于一条语句的后面

答案:错第15课:对于不同类型的数据,若想合成一个有机的整体,可以引用结构体进行定义。

答案:对第13课:以下程序运行后的输出结果是____。voidfun(intx,inty){

intt;t=x;x=y;y=t;}main(

){

intx=4,y=5;

fun(x,y);

printf(“%d\n”,x);}

答案:5第3课:字符串"a"的占内存长度是____字节。

答案:2第13课:以下程序运行后的输出结果是____。voidfun(intx,inty){

x=x+y;

y=x-y;

x=x-y;}main(

){

intx=2,y=3;

fun(x,y);

printf(“%d\n”,x);}(1.0)

答案:3执行下列语句inta=8;

a+=2;后,a的值是____。(1.0)

答案:10若有如下定义和语句:

inta[4]={0,10,45,-3},*p;p=&a[2];则*p的值是____。

答案:45第10课:若有定义:int

a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[0][0]得到的初值____a[2][3]得到的初值是____。

答案:1;10设chars[]={"E____mail"};,则执行printf("%d\n",strlen(s));后输出的值是____。(strlen(s)函数用于统计字符串中字符个数)

答案:6在调用一个函数的过程中,又调用另一个函数,这称为函数的____。

答案:嵌套C语言中基本的数据类型有:____、____、____和枚举类型。

答案:整型;字符型;浮点型所谓“指针”就是____。“&”运算符的作用是____。“*”运算符的作用是____。

答案:内存地址;取地址;访问指针指向的对象第3课:执行下列语句intb=10;

b=b*b;后,b的值是____。

答案:100有如下语句:char

A[]={"Iamastudent"};该字符串的长度是____,A[0]=____。

答案:14;I第10课:设doubley[4][5];,则数组y中元素的个数是____。(1.0)

答案:20第2课:执行下列语句inta=8;

a+=2;后,a的值是____。

答案:10第7课:当执行下面程序段后,变量i的值是____。int

i,j;j=0;for(i=0;i<10;i++){

j++;}(1.0)

答案:10C语言中单精度实型变量的类型说明符为____,在内存中占____字节,双精度实型变量的类型说明符为____,在内存中占____字节。

答案:float;4;double;8C语言中整型变量的类型说明符为____,在内存中占____字节。

答案:int;4逻辑运算符两側运算对象的数据类型可以是____。

答案:任何合法类型第2课:C语言中整型变量的类型说明符为____,在内存中占____字节。

答案:int;4第13课:C语言规定,函数返回值的类型是由____决定的。(调用者或定义者,二选一)(1.0)

答案:调用者设intx=3,y=5;则执行printf("%d\n",x*y);后输出____。

答案:15设x,y,z均为int型变量,请写出描述"x或y中有一个小于z"的表达式____。(答案中不要增加空格)

答案:x第4课:有如下输入语句:scanf("a=%d",&a);为使变量a的值为2,从键盘输入数据的正确形式应是____,加上回车键。

答案:2C语言中有两种基本的分支控制命令,请写出,举例说明____

答案:C语言第2课:C语言中基本的数据类型有:____、____、____和枚举类型。

答案:整型;字符型;浮点型当a=5,b=4,c=2时,表达式(a>b)!=c的值是____。

答案:0C语言中整型变量的类型说明符为____,在内存中占____字节。(1.0)

答案:int;4有如下输入语句:scanf("a=%d",&a);为使变量a的值为2,从键盘输入数据的正确形式应是____,加上回车键。

答案:2设doubley[4][5];,则数组y中元素的个数是____。

答案:20表示条件:x>10且x<100的C语言表达式是____。

答案:x>10&&x<100(x<100&&x>10当执行下面程序段后,变量i的值是____。int

i,j;j=0;for(i=0;i<10;i++){

j++;}

答案:10第3课:表示条件:x>10且x<100的C语言表达式是____。

答案:x>10&&x<100(x<100&&x>10执行下列语句intb=10;

b=b*b;后,b的值是____。

答案:100第2课:C语言中普通整型变量的类型说明符为____,在内存中占____字节,无符号普通整型的数据范围是____。

答案:int;4;-2^31~2^31-1第10课:若有定义:int

a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[0][0]得到的初值____a[2][3]得到的初值是__10__。(1.0)

答案:1第3课:逻辑运算符两側运算对象的数据类型可以是____。

答案:任何合法类型当执行下面程序段后,变量j的值是____。int

i,j;j=0;for(i=0;i<10;i++){

j++;}

答案:10在C语言中的实型变量分为两种类型,其定义符分别是____和____。

答案:float;double第13课:请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。

____(double,double);

//函数预定义

main()

{

doublex,y;

scanf("%f%f",&x,&y);

printf("%f\n",max(x,y));

}

doublemax(doublea,doubleb)

{

return(a>b?a:b);

}(1.0)

答案:doublemaxC语言中单精度实型变量的类型说明符为____,在内存中占____字节,双精度实型变量的类型说明符为____,在内存中占____字节。(1.0)

答案:float;4;double;8第5课:以下程序运行后的输出结果是____。intmain(){intx=10,y=20,t=0;if(x==y){

//判断x和y是否相等

t=x;x=y;y=t;//x,y互换}printf(“%d\n”,x);}

答案:10第13课:以下函数的功能是:求两个数中的较大者,请填空:

intmax(inta,intb)

{

intc;c=a>b?a:b;____;//返回数据

}

答案:returnc设inta=2;,则执行a=15+a;后,变量a的值是____。

答案:17执行以下程序时输入123,则输出结果是____。int

main(){inta=1,b;scanf("%d",&b);printf("%d\n",a+b);}

答案:124第11课:设chars[]={"E____mail"};,则执行printf("%d\n",strlen(s));后输出的值是____。(strlen(s)函数用于统计字符串中字符个数)(1.0)

答案:6执行以下程序时输入123,则输出结果是____。int

main(){inta=1,b;scanf("%d",&b);printf("%d\n",a+b);}(1.0)

答案:124第10课:设doubley[4][5];,则数组y中元素的个数是____。

答案:20以下程序运行后的输出结果是____。voidfun(intx,inty){

x=x+y;

y=x-y;

x=x-y;}main(

){

intx=2,y=3;

fun(x,y);

printf(“%d\n”,x);}

答案:3字符串"a"的占内存长度是____字节。(1.0)

答案:2第1课:一个C语言程序中,有且只有一个____函数。

答案:main(主第15课:字符'0'的ASCII码的十进制数为48(0x30),且数组的第0个元素在低位,则以下程序的输出结果是____#include"stdio.h"void

main____{union{int

i[2];

longk;

charc[4];}r,*s=&r

s->i[0]=0x39;

s->i[1]=0x38;

printf("%c",s->c[0]);}A、39B、9C、38D、8

答案:B表示条件:x>10且x<100的C语言表达式是____。(1.0)

答案:x>10&&x<100(x<100&&x>10以下程序运行后的输出结果是____。intmain(){intx=10,y=20,t=0;if(x==y){

//判断x和y是否相等

t=x;x=y;y=t;//x,y互换}printf(“%d\n”,x);}

答案:10第13课:在调用一个函数的过程中,又调用另一个函数,这称为函数的____。(1.0)

答案:嵌套(嵌套调用第1课:C语言规定,C语言由三种基本结构组成,分别是____结构、____结构和____结构。

答案:顺序;分支;循环第15课:若有如下定义和语句:

inta[4]={0,10,45,-3},*p;p=&a[2];则*p的值是____。

答案:45请读程序片段:

charstr[10]="IloveChina";

printf("%s\n",str);上面程序片段的输出结果是____。

答案:IloveChina设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为(

)

答案:double在C语言中,要求参加运算的数必须是整数的运算符是(

)。

答案:%第3课:以下程序的输出结果是()。

intx=10,y=10;

printf(“%d和%d\n”,x--,--y);

答案:10和9第1课:关于C语言标识符,以下叙述错误的是()。

答案:标识符可全部由数字组成第3课:有以下程序#include

main(){

intx=10,y=10;

printf("%d,%d\n",++x,y--);

//输出两个变量x,y的数值

}

程序运行后的输出结果是(

)

答案:11,10第3课:若a,b,c,d都是float型变量且初值为10.5,不正确的赋值语句是()。

答案:d=int(a+c)第7课:当处理特定问题时的循环次数已知时,通常采用()循环来解决。

答案:for第4课:阅读以下程序,当输入数据的形式为:25,13,10,正确的输出结果为()。#includeintmain(){intx,y,z;scanf("%d,%d,%d",&x,&y,&z);printf("x+y+z=%d\n",x+y+z);}

答案:x+y+z=48第2课:以下选项中,合法的C语言常量是(

)

答案:21.84第4章:请阅读以下程序:#includeintmain(){

inta=5,b=-2,c=0;

if((a+b+c)!=0){printf("***\n");}else{printf("$$$\n");}}以上程序(

)

答案:输出***第6课:下面程序段的运行结果是()。intn=0;while(n++<=2);printf("%d",n);

答案:4若有C语言表达式2+34+7/3,则以下选项中关于执行顺序的叙述,正确的是(

)

答案:先执行34得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16设x,y为均为float型变量,则以下不合法赋值语句(

)。

答案:y=(x%2)/10第6课:C语言中while和do-while循环的主要区别是()。

答案:do-while的循环体至少无条件执行一次第2课:C语言允许函数值型缺省定义,此时该函数值隐含的类型是(

)。

答案:int型第1课:C语言程序的模块化是通过以下哪个选项实现的()

答案:函数已知inti;floatf;

正确的语句是(

)。

答案:(int)f%i;第1课:以下选项中叙述正确的是()

答案:函数体必须由“{”开始第2课:以下选项中不能正确表示数值10000的实型常量是()。

答案:1.0E4.0第2课:以下选项中,合法的C语言实数是()

答案:1e0若a为int类型,且其值为3,则执行完表达式a-=a*a;a+=a;后,a的值是(

)

答案:-12已知intx=10,y=20,z;以下语句执行后x,y,z的值是(

)。if(x答案:x=20,y=10,z=10第4课:有如下程序#include

main(){

intx=72;

printf("%d\n",x+1);

}

程序运行后的输出结果是

答案:73第2章:字符串需要额外添加一个字符作为结束位,则字符串"abc"在内存中占据的字节个数为(

)

答案:4第15课:字符'0'的ASCII码的十进制数为48(0x30),且数组的第0个元素在低位,则以下程序的输出结果是(

)#include"stdio.h"void

main(){union{int

i[2];

longk;

charc[4];}r,*s=&r

s->i[0]=0x39;

s->i[1]=0x38;

printf("%c",s->c[0]);}

答案:9以下叙述正确的是(

)

答案:在C语言中分号是语句的组成部分第1课:以下叙述正确的是()

答案:C程序总是以main()作为程序执行的起始行以下选项中,合法的数值型常量是(

)

答案:3.2若有C语言表达式2+34+7/3,则以下选项中关于执行顺序的叙述,正确的是(

)

答案:先执行34得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16下面程序的运行结果是()#defineADD(x)

x+xintmain(){intm=1,n=2,k=3;intsum=ADD(m+n)*k;printf(“sum=%d”,sum);}

答案:sum=10第12课:C语言规定,程序中各函数之间(

)

答案:既允许直接递归调用,也允许间接递归调用第1课:以下选项中叙述正确的是

答案:C语言的标识符可分为关键字、预定义标识符和用户标识符三类以下程序的输出结果是()。#includeintmain(){

inta=-1,b=4,k;

k=(++a<0)&&!(b--<0);

printf("%d,%d,%d\n",K,a,b);}

答案:0,0,4第2课:以下选项中,合法的C语言常量是()

答案:1.234第2章:在C程序中,若对函数类型未加说明,则函数的隐含类型为(

)。

答案:int设有定义:

intn=1234;

doublex=3.1415;

则语句:printf("%3d,%1.3fn",n,x);的输出结果是(

)

答案:1234,3.142第1课:关于程序模块化,以下叙述错误的是()

答案:程序模块化可以提高程序运行的效率第2课:C语言中,运算对象必须是整型数的运算符是(

)

答案:%若变量c为char型,能正确判断出c为大写写字母的表达式是(

)。

答案:(c>='A')&&(c<='Z')下列标识符组中,合法的用户标识符为

答案:_0123与ssiped以下程序的运行结果是(

)#include#defineFUDGE(y)

2.84+y#definePR(a)

printf(“%d”,(int)(a))#definePRINT1(a)

PR(a);putchar(‘\n’)main(){intx=2;PRINT1(FUDGE(5)*x);}

答案:12第1课:以下叙述中错误的是(

)

答案:计算机可以直接识别由十六进制代码构成的程序在C语言中,char型数据在内存中的存储形式是(

)

答案:ASCII码有以下程序#include

main(){

intx=0x9;

printf("%c\n",‘A'+x);

}程序运行后的输出结果是(

)

答案:J从键盘输入(scanf)一个百分制成绩score,按下列原则输出显示(printf)对应等级。score≥90,等级为(

)

答案:60≤score<70,等级为若有定义:charc;doubled;程序运行时输入:12,能把字符1输入给变量c、数值2输入给变量d的输入语句是

答案:scanf("%c%lf",&c,&d);已知intj,i=1;执行语句j=-i++;后,j的值是(

)。

答案:-1第4课:若有定义:charc;doubled;程序运行时输入:12,能把字符1输入给变量c、数值2输入给变量d的输入语句是(

)

答案:scanf("%c%lf",&c,&d);定义以下结构体类型

struct

s{intx;

floatf;

}a[3];

则语句printf("%d",sizeof(a))的输出结果为(

)

答案:24以下选项中合法的C语言赋值语句是(

)

答案:++i;第1课:以下叙述正确的是(

)

答案:结构化程序的三种基本结构是循环结构、选择结构、顺序结构有以下程序#include

main(){

intx=0x13;

printf("INT:%d\n",x+1);

//输出表达式x+1的数值

}

程序运行后的输出结果是(

)

答案:INT:20若有定义:intx=3,y=2;floata=2.5,B=3.5;则(x+y)%2+(int)a/(int)B的值为(

)。

答案:1设有两行定义语句:

intcan;

floatcase;则以下叙述正确的是(

)

答案:第2行语句不合法第2课:假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为()。

答案:9第1课:以下选项中叙述正确的是(

)

答案:C语言的标识符可分为关键字、预定义标识符和用户标识符三类第1课:以下选项中叙述正确的是()。

答案:函数体必须由“{”开始为了避免嵌套的if-else语句产生二义性,C语言规定else总是与(

)组成配对关系。(

)

答案:在其之前且同一层次的未配对的最近的if第1课:以下叙述中正确的是()。

答案:C语言以接近英语国家的自然语言和数学语言作为语言的表达形式以下能正确的定义整型变量a,b,c并为其赋初值5的语句是()。

答案:inta=5,b=5,c=5;第4课:设有定义:doublex=5.16894;,则语句printf("%lf|n"(int)(x*1000+0.5)/1000.);的输出结果是(

)

答案:5.16900第1课:C语言程序是由(

)组成。

答案:函数第2课:C语言中的基本数据类型包括(

)

答案:整型、实型、字符型下面程序段的运行结果是()。intn=0;while(n++<=2);printf("%d",n);

答案:4第2课:在以下运算符中,优先级最高的运算符是(

)。

答案:/第3课:设有定义:intx=7,y=12;,则以下表达式值为3的是(

)

答案:(y%=x)-(x%=5)第1课:以下选项中可用作C语言合法用户标识符的是()

答案:_123第2课:以下选项中,合法的数值型常量是()

答案:3.1415若float型变量占用4个字节,有定义floata[20]={1.1,2.1,3.1};则数组a在内存中所占的字节数是(

)。

答案:80有以下程序#include#include

intmain(){

inta=1,b=4,c=2;

doublex=10.5,y=4.0,z;

z=(a+b)*c+sqrt(y)*1.2/c+x;

printf(“%f\n”,z);

//输出z的数值

}

程序运行后的输出结果是:(

)

答案:21.700000以下选项中,合法的数值型常量是(

)

答案:3.1415第1课:关于C语言标识符,以下叙述错误的是()

答案:标识符可全部由数字组成第5课:以下选项中叙述正确的是(

)

答案:使用三种基本结构就可以实现任何复杂算法第9课:以下定义语句中,错误的是(

)。

答案:intn=5,a[n];第2课:若有代数式3ae/bc,则正确的C语言表达式是(

)

答案:3*a*e/b/c第2课:若有定义:intx=3,y=2;floata=2.5,b=3.5;则(x+y)%2+(int)a/(int)b的值为(

)。

答案:1第3课:已知chara;intb;floatc;doubled;则表达式a∗b+c-d结果为()型。

答案:double第15课:如果有下面的定义和赋值,则使用(

)不可以输出n中data的值。

struct

SNode{

unsignedid;

intdata;

}n,*p;p=&n

答案:(*p).data若定义数组并初始化chara[10]={'0','1','2','3','4','5','6','7','8','9'};指出以下正确的语句(

)。

答案:printf("%s",a);sizeof(double)是()

答案:一个整型表达式以下叙述中错误的是(

)

答案:书写风格良好的程序执行效率高第5课:为了避免嵌套的if-else语句产生二义性,c语言规定else总是与(

)组成配对关系。

答案:在其之前且同一层次的未配对的最近的if如果有下面的定义和赋值,则使用(

)不可以输出n中data的值。

struct

SNode{

unsignedid;

intdata;

}n,*p;p=&n

答案:(*p).data第3课:已知intx=10,y=20,z;以下语句执行后x,y,z的值是(

)。if(x答案:x=20,y=10,z=10第3课:以下能正确的定义整型变量a,b,c并为其赋初值5的语句是()。

答案:inta=5,b=5,c=5;第3课:执行下列程序中的输出语句后,a的值是(

)。#includeintmain(){

inta;

printf(“%d\n”,(a=3*5,a*4,a+5));}

答案:20第3课:以下程序的输出结果是(

)。#includeintmain(){inta=5,b=4,c=6,d;printf("%d\n",d=a>b?(a>c?a:c):(b));}

答案:6第3课:以下程序的输出结果是()。#includeintmain(){inty=3,x=3,z=1;printf("%d%d\n",(++x,y++),z+2);}

答案:33第3课:已知intj,i=1;执行语句j=-i++;后,j的值是(

)。

答案:-1第3课:已知inti;floatf;

正确的语句是(

)。

答案:(int)f%i;第3课:若a为int类型,且其值为3,则执行完表达式a-=a*a;a+=a;后,a的值是(

)

答案:-12第3课:设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为(

)

答案:double第3章:定义inta;floatf;doublei;6.定义表达式15+i*f+0x60的值是(

)。

答案:double第3章:判断字符串a和b是否相等,应当使用(

)。

答案:if(strcmp(a,b))第3课:若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为

(

)

答案:a!=0第3课:设x,y和z均为int型变量,则以下语句:z=y;y=x;x=z;的功能是(

)

答案:交换x和y中的值第3课:以下选项中关于C语言算术表达式的叙述中错误的是

答案:C语言仅提供了+、-、*、/这4个基本算术运算符第3课:若变量已正确定义并赋初值,以下合法的赋值语句是

答案:k=(m=n);第3课:若有定义:doublex;,则表达式:x=0,x+10,x++的值是

答案:0.0第3课:以下说法正确的是

答案:赋值语句是一种可执行语句,应当出现在函数的可执行部分第3课:有以下程序

#include

main(){

inta=2,=3,c=4;

a*=16+(b++)-(++c);

printf("%d\n",a);}

程序运行后的输出结果是

答案:28第3课:若有定义:inta,b,c;以下程序段的输出结果是

a=11;b=3;c=0;

printf("%d\n",c=(a/b,a%b));

答案:2第3课:设变量m为float类型,变量n为int类型,则以下能实现将m中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是

答案:n=m*100+0.5,m=n/100.0第3课:以下选项中,与n=i++完全等价的表达式是

答案:n=i,=i+1第3课:以下不能用于实型数据的运算符是

答案:%第3课:有C语言表达式2*3+4+15%3,关于其执行顺序,以下叙述正确的是

答案:先执行2*3得6,再执行15%3得0,最后执行6+4+0得10第3课:若想给已定义为int型的变量a,b,c,d赋值为1,以下选项中错误的语句是

答案:a=b,b=c,c=d,d=1;第3课:若有C语言表达式2+34+7/3,则以下选项中关于执行顺序的叙述,正确的是

答案:先执行34得12,再执行2+12得14,再执行7/3得2,最后执行14+2得16第3课:以下能正确表述算式sin(2πr+30°)的C语言表达式是

答案:sin(3.14*r+3.14*30/180.0)第3课:设有定义:inta=0,b=1,c=1;以下选项中,表达式值(a,b,c)与其它三个不同的是

答案:b=a=c;第3课:若有定义inta,b,c;

以下选项中的赋值语句正确的是

答案:a=(b=c)+1;第3课:设a,b,c是整型变量且均已赋值,则以下选项中错误的是

答案:a=(b=3)=1;第3课:有以下程序

#include

main(){

intx=10,y=10;

printf("%d,%d\n",++x,y--);

//输出两个变量x,y的数值

}

程序运行后的输出结果是

答案:11,10第3课:若有定义语句:inta=12;,则执行语句:

a+=a-=a*a;

a的值是

答案:-264第3课:有以下程序#include

#include

intmain(){

inta=1,b=4,c=2;

doublex=10.5,y=4.0,z;

z=(a+b)*c+sqrt(y)*1.2/c+x;

printf(“%f\n”,z);

//输出z的数值

}

程序运行后的输出结果是:

答案:21.700000第3课:sizeof(double)是

答案:一个整型表达式第3课:有以下程序段,其中的变量已定义为int类型。

sum=pad=5;

pad=sum++;

pad++;

++pad;

printf(“%dIn",pad);

程序段的输出结果是

答案:7第3课:以下选项中合法的C语言赋值语句是

答案:++i;第2课:若变量c为char型,能正确判断出c为大写写字母的表达式是(

)。

答案:(c>='A')&&(c<='Z')第2课:在以下运算符中,优先级最高的运算符是(

)。

答案:/第2课:在C语言中,要求参加运算的数必须是整数的运算符是(

)。

答案:%第2课:C语言中,运算对象必须是整型数的运算符是(

)

答案:%第2课:C语言允许函数值型缺省定义,此时该函数值隐含的类型是(

)。

答案:int型第2课:在C语言中,char型数据在内存中的存储形式是(

)

答案:ASCII码第2课:以下程序的执行结果是(

)#includeintmain(){

inti=10,j=10;

printf("%d,%d\n",++i,j--);}

答案:11,10第2章:为表示关系100≥x≥10,应使用C语言表达式(

)。

答案:(x<=100)&&(x>=10)第2章:在C程序中,若对函数类型未加说明,则函数的隐含类型为(

)。

答案:int第2章:字符串需要额外添加一个字符作为结束位,则字符串"abc"在内存中占据的字节个数为(

)

答案:4第2章:unsignedshortint占用16位bit(2^16=65536),若unsigned

shortinti=65536;printf("%d",i);的输出结果是(

)

答案:0第2章:判断char型变量c1是否为小写字母的正确表达式为(

)

答案:(c1>='a')&&(c1<='z')第2章:请阅读以下程序:main(){inta=5,b=0,c=5;

if(a!=(b+c))

{printf("***\n");}

else

{printf("$$$\n");}}以上程序(

)。

答案:输出$$$第2章:执行charstr[15]="ILoveChina"(两个单词之间有一个空格);strlen用于统计字符串的长度,则strlen(str)的结果是(

)。

答案:12第2课:以下选项中可用作C程序合法整数的是

答案:0x77第2课:以下选项中不是C语言数据类型的是

答案:string第2课:有以下程序

#include

main(){

intx=0x9;

printf("%c\n",‘A'+x);

}

程序运行后的输出结果是

答案:J第2课:以下选项中,合法的C语言实数是

答案:4e0第2课:以下选项中合法的C语言常量是

答案:2014.1第2课:若想定义int型变量a,b,c,d并都赋值为1,以下写法中错误的是

答案:inta=b=c=d=1;第2课:以下是正确C语言实型常量的是

答案:1e-1第2课:以下不正确的定义语句是

答案:unsignedinta=-100u;第2课:以下表达式的值与x无关、其值恒为真的是

答案:0第2课:有以下程序

#include

main(){

intx=0x13;

printf("INT:%d\n",x+1);

//输出表达式x+1的数值

}

程序运行后的输出结果是

答案:INT:20第2课:若已有定义语句:inta,b,c;且变量已正确赋初值,则以下选项中正确的赋值语句是

答案:a=(b=c)+8;第2课:以下选项中,合法的数值型常量是

答案:3.2第2课:有如下程序

#include

main(){

intx=0x72;

printf("x=%d\n",x+1);//输出x+1表达式的值}程序运行后的输出结果是

答案:x=115第2课:设a,b,c是整型变量,己正确赋初值,以下选项中错误的赋值语句是

答案:a=2=(b=9)=1;第2课:以下选项中,合法的C语言常量是

答案:21.84第2课:以下不属于C语言整数的是

答案:12f第2课:以下选项中不能正确表示数值10000的实型常量是

答案:1.0E4.0第2课:有如下程序

#include

intmain(){

intx=0x13;

printf("%d\n",x+1);

//输出表达式的数值}

程序运行后的输出结果是

答案:20第2课:以下选项中,合法的C语言实数是

答案:0.2e0第2课:以下选项中,合法的C语言常量是

答案:1.234第1课:C语言程序是由(

)组成。

答案:函数第1课:下列标识符组中,合法的用户标识符为(

)

答案:_0123与ssiped第1课:在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(

)。

答案:main第1课:一个C语言程序是由(

)

答案:函数组成第1章:C语言中提供的合法关键字是(

)

答案:default第1章:C语言源程序文件的缺省扩展名为(

)。

答案:c第1章:以下不是C语言的特点的是(

)。

答案:能够编制出功能复杂的程序第1课:C语言规定,在一个源程序中,main主函数的位置是在(

)

答案:可以在任意位置第1课:以下叙述中正确的是(

)。

答案:C语言以接近英语国家的自然语言和数学语言作为语言的表达形式第1课:C语言中的#define命令是一种(

)命令。

答案:预处理第1课:以下选项中不能在C语言程序中用作用户标识符的是

答案:auto第1课:以下叙述正确的是

答案:通过分解成简单子任务,可以完成任何复杂任务第1课:以下是正确C语言标识符的是

答案:_3第1课:关于程序模块化,以下叙述错误的是

答案:程序模块化可以提高程序运行的效率第1课:关于程序设计基本概念,以下叙述错误的是

答案:计算机可以直接执行由任意高级语言编写的程序第1课:下面叙述正确的是

答案:任何复杂任务都可以分解成简单子任务第1课:关于C语言标识符,以下叙述错误的是

答案:标识符可全部由数字组成第1课:以下选项中叙述正确的是

答案:函数体必须由“{”开始第1课:以下选项中可用作C语言合法用户标识符的是

答案:_123第1课:C语言程序是由(

)组成

答案:函数第1课:下列标识符组中,合法的用户标识符为

答案:_0123与ssiped

第1课:以下选项中不合法的用户标识符是

答案:abc.c第1课:下列四组选项中,均不是C语言关健字的选项是

答案:define、lf、

type第4课:以下程序的执行结果是(

)。#includemain(){

intsum,pad;

sum=pad=5;

pad=sum++;

pad++;

++pad;

printf("%d,%d\n",sum,pad);}

答案:6,7第4课:阅读以下程序,当输入数据的形式为:25,13,10,正确的输出结果为(

)。#includeintmain(){intx,y,z;scanf("%d,%d,%d",&x,&y,&z);printf("x+y+z=%d\n",x+y+z);}

答案:x+y+z=48第4课:已知字母A的ASCII码是65,以下程序的执行结果是(

)。#includeintmain(){charc1='A',c2='Y';printf("%d,%d\n",c1,c2);}

答案:65

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论