程序设计基础(C语言)(山东联盟)知到章节答案智慧树2023年青岛理工大学_第1页
程序设计基础(C语言)(山东联盟)知到章节答案智慧树2023年青岛理工大学_第2页
程序设计基础(C语言)(山东联盟)知到章节答案智慧树2023年青岛理工大学_第3页
程序设计基础(C语言)(山东联盟)知到章节答案智慧树2023年青岛理工大学_第4页
程序设计基础(C语言)(山东联盟)知到章节答案智慧树2023年青岛理工大学_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

程序设计基础(C语言)(山东联盟)知到章节测试答案智慧树2023年最新青岛理工大学第一章测试

以下叙述中正确的是(

)。

参考答案:

用C程序实现的算法可以没有输入但必须要有输出

以下不能定义为用户标识符的是(

)。

参考答案:

printf

按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(

)。

参考答案:

连接符

以下C语言用户标识符中,不合法的是(

)。

参考答案:

a--b

结构化程序由三种基本结构组成,三种基本结构组成的算法(

)。

参考答案:

可以完成任何复杂的任务

以下叙述中正确的是(

)。

参考答案:

C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

C语言源程序名的后缀是(

)。

参考答案:

.c

以下叙述中错误的是(

)。

参考答案:

C程序在书写时,有严格的缩进要求,否则不能编译通过

下列关于C语言用户标识符的叙述中正确的是(

)。

参考答案:

用户标识符中不可以出现中划线,但可以出现下划线

下列4个选项中,(

)是合法的用户自定义标识符。

参考答案:

_isw

第二章测试

下列选项中,(

)可以将x、y定义成double类型变量,并赋同一初值3.14。

参考答案:

doublex=3.14,y=3.14;

若变量已正确定义并赋值,表达式(

)不符合C语言语法。

参考答案:

3.14%2

下列表达式中值为0的是(

)。

参考答案:

3/5

以下选项中,(

)是不正确的字符常量。

参考答案:

"a"

以下选项中不正确的整型常量是(

)。

参考答案:

1,900

以下正确的字符串常量是()。

参考答案:

"5111"

假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式

的表达式是(

)。

参考答案:

1.0/a/b/c

以下能正确定义且赋初值的语句是(

)。

参考答案:

charch='A';

设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,32+z)后,x的值为(

)。

参考答案:

48

C语言中,运算对象必须是整型数的运算符是(

)。

参考答案:

%

有以下程序main(){

chara1='M',a2='m';

printf("%c",(a1,a2));

}以下叙述中正确的是(

)。

参考答案:

程序输出小写字母m

在C语言中,下列属于构造类型的是(

)。

参考答案:

数组类型

设d为字符型变量,下列表达式不正确的是(

)。

参考答案:

d=”a”

参考答案:

5.800000

表达式(double)(20/3)的值为(

)。

参考答案:

6.0

表达式3.6-5/2+1.2+5%2的值是(

)。

参考答案:

3.8

表达式sizeof("hello")的值为(

)。

参考答案:

6

设整型变量a值为9,则下列表达式中使b的值不为4的表达式(

)。

参考答案:

b=a%2

已知ch是字符型变量,下面不正确的赋值语句是(

)。

参考答案:

ch=‘a+b’;

有以下定义语句,编译时会出现编译错误的是(

)。

参考答案:

chara='aa';

第三章测试

若变量已正确定义并赋值,下面符合C语言语法的表达式是(

)。

参考答案:

a=b=c+2

设变量已正确定义并赋值,表达式(

)不符合C语言语法。

参考答案:

int(3.14)

下列关于自增运算符++和自减运算符--的叙述中正确的是(

)。

参考答案:

它们的运算对象可以是char型变量、int型变量和float型变量

若变量a、i已正确定义,且i已正确赋值,则合法的语句是(

)。

参考答案:

++i;

设x为int型变量,则执行以下语句后,x的值为(

)。x=10;

x+=x-=x+x;

参考答案:

-20

以下叙述中正确的是(

)。

参考答案:

使用putchar函数时,必须在之前包含头文件stdio.h

以下程序的输出结果是(

)。#include"stdio.h"

main(){

inta=10;

a=(3*5,a+4);

printf("a=%d",a);}

参考答案:

a=14

以下不能输出字符A的语句是(注:字符A的ASCIl码值为65,字符a的ASCIl码值为97)()。

参考答案:

printf("%d",'A');

若有以下定义和语句:charc1='c',c2='g';printf("%d,%c",c2-c1,c2-'a'+'A');则输出结果是(

)。

参考答案:

4,G

以下程序段的输出结果是(

)。

floatm=34.567;

printf("%3.2f",m);

参考答案:

34.57

以下程序的输出结果是(

)。

#include"stdio.h"

main()

{

charc='z';

printf("%c",c-25);

}

参考答案:

a

以下程序的输出结果是(

)。

#include"stdio.h"

main()

{

int

k=27;

printf("%d,%o,%x",k,k,k);

}

参考答案:

27,33,1b

以下程序的输出结果是(

)。

#include"stdio.h"

main()

{

doubled=3.2;

intx,y;x=1.2;y=(x+3.8)/5.0;printf("%d",d*y);

}

参考答案:

0

下列程序执行后的输出结果是(小数点后只写1位)(

)。

#include"stdio.h"

main()

{

doubled;

floatf;

longk;

inti;i=f=k=d=20.0/3;printf("%d%ld%.1f%.1f",i,k,f,d);

}

参考答案:

666.06.7

x、y、z被定义为double型变量,若从键盘上给x、y、z输入数据,则正确的输入语句是(

)。

参考答案:

scanf("%lf%lf%lf",&x,&y,&z);

设i是int型变量,f是float型变量,若要通过语句“scanf("i=%d,f=%f",&i,&f);”给i赋值100,f赋值765.12,则正确的输入为()。

参考答案:

i=100,f=765.12

设有以下定义inta=0;doubleb=1.25;charc='A';#defined2则下面语句中错误的是(

)。

参考答案:

d++;

有以下程序

#include"stdio.h"

main()

{inta,b,d=25;

a=d/10%9;

b=a-1;

printf("%d,%d",a,b);

}

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

)。

参考答案:

2,1

有以下程序

#include"stdio.h"

main()

{charc1='1',c2='2';c1=getchar();

c2=getchar();

putchar(c1);putchar(c2);

}

当运行时输入:ab<回车>

后,以下叙述正确的是(

)。

参考答案:

变量c1被赋予字符a,c2被赋予字符b

下列程序的输出结果是16.00,请在程序中填空。

#include"stdio.h"

main()

{

inta=9,b=2;

floatx=________,y=1.1,z;

z=a/2+b*x/y+1/2;

printf("%5.2f",z);

}

参考答案:

6.6

第四章测试

若x=3,y=z=4,则下列表达式的值分别为(

)。

(1)z>=y>=x?1:0

(2)z>=y&&y>=x

参考答案:

0

1

在嵌套使用if语句时,C语言规定else总是(

)。

参考答案:

和之前与其最近的且不带else的if配对

判断字符型变量ch为大写字母的表达式是(

)。

参考答案:

(ch>=’A’)&&(ch<=’Z’)

逻辑运算符的运算对象的数据类型(

)。

参考答案:

任何类型的数据

以下是if语句的基本形式:

if(表达式)语句

其中“表达式”(

)。

参考答案:

可以是任意合法的表达式

下列条件语句中,功能与其他语句不同的是(

)。

参考答案:

if(a==0)printf("%d",x);

elseprintf("%d",y);

以下程序段中与语句“k=a>b?(b>c?1:0):0;”功能等价的是(

)。

参考答案:

if((a>b)&&(b>c))

k=1;else

k=0;

下面程序的输出结果是(

)。#include"stdio.h"main(){

intx=40,y=4,z=4;

x=y==z;

printf("%d",x);

x=x==(y-z);

printf("%d",x);}

参考答案:

1

0

下列各语句序列中,能够将变量u和s中的较大值赋值到变量t中的是(

)。

参考答案:

t=s;if(u>s)t=u;

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){inta=5,b=4,c=3,d=2;

if(a>b>c)

printf("%d",d);

elseif((c-1>=d)==1)

printf("%d",d+1);

else

printf("%d",d+2);

}

参考答案:

3

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){

charx='d';

x=(x>='a'&&x<='z')?(x-32):x;

printf("%c",x);}

参考答案:

D

若有定义:floatx=1.5;inta=1,b=3,c=2;,则正确的switch语句是(

)。

参考答案:

switch(a+b){

case1:printf("*");

case1+2:printf("**");}

以下程序的输出结果是(

)。#include"stdio.h"main(){

inta=2,b=2,c;

c=a>=b;

printf("c=%d",c);}

参考答案:

c=1

下列程序执行后的输出结果是(

)。#include"stdio.h"main(){

intn=0,m=1,x=2;

if(!n)x-=1;

if(m)x-=2;

if(x)x-=3;

printf("%d",x);}

参考答案:

-4

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){

intp,a=5;

if(p=a!=0)

printf("%d",p);

else

printf("%d",p+2);}

参考答案:

1

以下程序的运行结果是(

)。#include"stdio.h"main(){

inta=2,b=3,c;

c=a;

if(a>b)c=1;

elseif(a==b)

c=0;

else

c=-1;

printf("%d",c);}

参考答案:

-1

有以下程序#include"stdio.h"main(){intx;scanf("%d",&x);if(x>15)printf("%d

",x-5);if(x>10)printf("%d

",x);if(x>5)printf("%d\n",x+5);}若程序运行时从键盘输入12<回车>,则输出结果为(

)。

参考答案:

12

17

若有表达式(p)?(--x):(++y),则其中与w等价的表达式是(

)。

参考答案:

p!=0

有以下程序#include"stdio.h"main(){

inta,b,c;

a=10;b=50;c=30;

if(a>b)a=b,b=c;c=a;

printf("a=%db=%dc=%d",a,b,c);}程序的输出结果是(

)。

参考答案:

a=10b=50c=10

有以下程序#include"stdio.h"main(){

intx=1,y=2,z=3;

if(x>y)

if(y<z)

printf("%2d",z+1);

else

printf("%2d",y+1);

printf("%2d",x+1);}

程序的运行结果是(

)。

参考答案:

2

第五章测试

以下叙述中正确的是(

)。

参考答案:

用do-while语句构成的循环,在while后的表达式为零时结束循环。

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){

intx=0,y=5,z=3;

while(z>0&&x<5)

{y=y-1;z--;x++;}

printf("%d,%d,%d",x,y,z);

}

参考答案:

3,2,0

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){inti;

for(i=0;i<3;i++)

switch(i)

{

case1:printf("%d",i);

case2:printf("%d",i);break;

default:printf("%d",i);

}}

参考答案:

0112

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){inti=0,s=0;

do{

if(i%2){i++;continue;}

i=i+2;

s+=i;

}while(i<7);

printf("%d",s);}

参考答案:

20

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

)。#include"stdio.h"main(){

intx=3;

do

{

printf("%d",x-=2);

}

while(!(--x));}

参考答案:

1和-2

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

)。#include"stdio.h"main(){

intn=5,s=0;

while(n)

{

s+=n;

n--;

}

printf("%d",s);}

参考答案:

15

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){inti,s=0;

for(i=1;i<10;i+=2)s+=i+1;

printf("%d",s);}

参考答案:

自然数1~10中的偶数之和

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){inti,n=0;

for(i=2;i<5;i++)

{do

{if(i%3)continue;

n++;

}while(!i);

n++;

}

printf("n=%d",n);

}

参考答案:

n=4

下面程序的功能是输出以下形式的图案,应在下划线处填入的是(

)。****

************#include"stdio.h"main(){inti,j;

for(i=1;i<=4;i++)

{

for(j=1;j<=

;j++)

printf("*");

printf("");

}

}

参考答案:

2*i-1

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

)。#include"stdio.h"main(){

inti=0,s=0;

for(;;)

{if(i==3||i==5)continue;

if(i==6)break;

i++;

s+=i;

}

printf("%d",s);

}

参考答案:

程序进入死循环

以下程序的输出结果是(

)。#include"stdio.h"main()

{

inti;

for(i='A';i<'I';i++,i++)

printf("%c",i+32);

printf("");

}

参考答案:

aceg

运行以下程序后,如果从键盘上输入“65,14<Enter>”,则输出结果为(

)。#include"stdio.h"main(){

intm,n;

printf("Enterm,n;");

scanf("%d,%d",&m,&n);

while(m!=n)

{while(m>n)m-=n;

while(n>m)n-=m;

}

printf("m=%d",m);}

参考答案:

m=1

若变量已正确定义,要求程序段完成求6!的计算,不能完成此操作的程序段是(

)。

参考答案:

for(i=1;i<=6;i++){p=1;p*=i;}

设x和y均为int型变量,则执行以下的循环后,y值为(

)。for(y=1,x=1;y<=50;y++){if(x==10)

break;

if(x%2==1)

{x+=5;continue;}

x-=3;}

参考答案:

6

设j为int型变量,则下面for循环语句的执行结果是(

)。

for(j=10;j>3;j--)

{

if(j%3)j--;

--j;--j;

printf("%d

",j);

}

参考答案:

7

4

有以下程序#include"stdio.h"main(){

inta=1,b;

for(b=1;b<=3;b++)

{

if(a%2==1){a+=3;continue;}

a-=2;

}

printf("%d",a);}程序运行后的输出结果是(

)。

参考答案:

0

有以下程序段

int

n,t=0,s=0;

scanf("%d",&n);

do

{s=s+t;t=t-2;}

while(t!=n);为使此程序段不陷入死循环,从键盘输入的数据应该是(

)。

参考答案:

任意负偶数

要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是(

)。

参考答案:

while((ch=getchar())!=′N′)printf("%c",ch);

有以下程序#include<stdio.h>main(){inti,j,n=0;for(i=3;i>=1;i--)for(j=1;j<=2;j++)n++;printf("%d",n);}

程序的运行结果是()。

参考答案:

6

有以下程序#include<stdio.h>main(){

inti=5;

do

{

if(i%3==1)

if(i%5==2)

{printf("*%d",i);break;}

i++;

}

while(i!=0);

printf("");}

程序的运行结果是(

)。

参考答案:

*7

第六章测试

若有以下说明:

inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};

charc='a',d,g;则数值为4的表达式是(

)。

参考答案:

a['d'-c]

若有定义语句:intm[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是(

)。

参考答案:

m[m[0]]

以下对一维整型数组a的正确说明是(

)。

参考答案:

#defineSIZE10

inta[SIZE];

若要定义一个具有5个元素的整型数组,以下错误的定义语句是(

)。

参考答案:

int

i=5,d[i];

给出以下定义:charx[]="abcdefg";chary[]={'a','b','c','d','e','f','g'};则正确的叙述为()。

参考答案:

数组X的长度大于数组Y的长度

下列字符串赋值语句中,不能正确把字符串Cprogram赋给数组的语句是()。

参考答案:

chara[10];a="Cprogram";

下面程序段的运行结果是()。charc[5]={'a','b','\0','c','\0'};printf("%s",c);

参考答案:

ab

若有如下定义和语句:

chars[12]="abook!";

printf("%d",strlen(s));则输出结果是(

)。

参考答案:

7

以下定义数组的语句中错误的是(

)。

参考答案:

intnum[2][4]={{1,2},{3,4},{5,6}};

执行下面的程序段后,变量k中的值为(

)。intk=3,b[10]={1};b[0]=k;k=b[1]*10;

参考答案:

0

以下程序的输出结果是(

)。#include"stdio.h"main(){

int

n[5]={0},i,k=3;

for(i=0;i<k;i++)

n[i]=n[i]+1;

printf("%d\n",n[k]);}

参考答案:

0

以下程序的输出结果是(

)。#include"stdio.h"main(){

int

a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

for(i=1;i<3;i++)

for(j=0;j<=i;j++)s+=a[i][j];

printf("%d",s);}

参考答案:

18

以下程序执行后的输出结果是(

)。#include"stdio.h"main(){chara[]="abcdefg",b[10]="abcdefg";

printf("%d%d",sizeof(a),sizeof(b));}

参考答案:

810

当执行下面的程序且输入ABC时,输出的结果是(

)。#include<stdio.h>#include<string.h>main(){

charss[10]="123456789";

gets(ss);

printf("%s",ss);}

参考答案:

ABC

以下程序执行后的输出结果是(

)。#include"stdio.h"main()

{char

ch[20]={"7856ab21"};

inti,s=0;

for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2)

s=10*s+ch[i]-'0';

printf("%d\n",s);

}

参考答案:

75

以下程序运行的输出结果是(

)。#include"stdio.h"main()

{charch[2][5]={"789","256"};

inti,j,s=0;

for(i=0;i<2;i++)

for(j=0;j<2;j++)

s=10*s+ch[i][j]-'0';

printf("%d\n",s);

}

参考答案:

7825

以下程序的输出结果是(

)。#include<stdio.h>main(){inti,k,a[10],p[3];

k=5;

for(i=0;i<10;i++)

a[i]=i;

for(i=0;i<3;i++)

p[i]=a[i*(i+1)];

for(i=0;i<3;i++)

k+=p[i]*2;

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

参考答案:

21

有以下程序#include<stdio.h>main(){inti,t[][3]={9,8,7,6,5,4,3,2,1};

for(i=0;i<3;i++)printf("%d",t[2-i][i]);}程序执行后的输出结果是(

)。

参考答案:

357

设有定义语句:inta[][3]={{0},{1},{2}};,则数组元素a[1][2]的值为(

)。

参考答案:

0

有以下程序#include<stdio.h>#include<string.h>main(){chars[]="12345";

printf("%d,%d",strlen(s),sizeof(s));}执行后输出结果是(

)。

参考答案:

5,6

第七章测试

下列各函数首部中,正确的是(

)。

参考答案:

voidplay(inta,intb)

在C语言中,函数值类型的定义可以是默认类型,此时函数值的默认类型是(

)。

参考答案:

int

在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是(

)。

参考答案:

单向值传递

在C语言程序中,有关函数的叙述正确的有(

)。

参考答案:

函数的定义不可以嵌套,但函数的调用可以嵌套

以下叙述中不正确的是(

)。

参考答案:

在一个函数内的复合语句中定义的变量在本函数范围内有效

有如下函数调用语句:func(recl,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是(

)。

参考答案:

3

以下叙述中正确的是(

)。

参考答案:

静态(static)类别变量的生存期贯穿于整个程序的运行期间

以下程序的运行结果是(

)。#include"stdio.h"main()

{

inta=24,b=16,c;

c=abc(a,b);

printf("%d",c);}intabc(intu,intv){

intw;

while(v)

{w=u%v;u=v;v=w;}

returnu;}

参考答案:

8

以下程序的运行结果是(

)。#include"stdio.h"intf1(intx,inty){

returnx>y?x:y;}intf2(intx,inty){

returnx>y?y:x;}main(){

inta=4,b=3,c=5,d,e,f;

d=f1(a,b);d=f1(d,c);

e=f2(a,b);e=f2(e,c);

f=a+b+c-d-e;

printf("%d,%d,%d",d,f,e);}

参考答案:

5,4,3

以下程序的运行结果是(

)。#include"stdio.h"voidf(intx,inty){intt;

if(x<y){t=x;x=y;y=t;}}main(){inta=5,b=6,c=7;

f(a,b);f(a,c);f(b,c);

printf("%d,%d,%d",a,b,c);}

参考答案:

5,6,7

以下程序的运行结果是(

)。#include"stdio.h"intf(){

staticinti=0;

ints=1;

s+=i;i++;

returns;}main(){

inti,a=0;

for(i=0;i<5;i++)a+=f();

printf("%d",a);}

参考答案:

15

以下程序的运行结果是(

)。#include"stdio.h"intfunc(inta,intb){return(a+b);}main(){

intx=2,y=5,z=7,r;

r=func(func(x,y),z);

printf("%d",r);}

参考答

温馨提示

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

评论

0/150

提交评论