C语言程序设计(上海电力大学)知到智慧树期末考试答案题库2024年秋上海电力大学_第1页
C语言程序设计(上海电力大学)知到智慧树期末考试答案题库2024年秋上海电力大学_第2页
C语言程序设计(上海电力大学)知到智慧树期末考试答案题库2024年秋上海电力大学_第3页
免费预览已结束,剩余4页可下载查看

下载本文档

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

文档简介

C语言程序设计(上海电力大学)知到智慧树期末考试答案题库2024年秋上海电力大学unsigned

char型变量的取值范围为:-27~27-1(

A:错B:对

答案:错已知char

ch;则getchar(ch)可以实现ch变量的输入。(

A:对B:错

答案:错23.5E3为合法的浮点型常量(

A:对B:错

答案:对函数的函数体可以是空语句。(

A:对B:错

答案:对在C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。(

A:对B:错

答案:对若有定义float

x;则为变量x在内存中分配的字节数是4(

A:对B:错

答案:对输出sin30度的值对应代码为:printf("\tsin(%lf)=%lf\n",30,sin(30));。(

A:对B:错

答案:错不正确的定义是(

)。

A:int

i,*p=&i;B:int

*p=&i,i;C:int

*p,i;D:int

i,*p;

答案:int

*p=&i,i;假设有结构体定义如下:struct

student{

int

num;

char

name[20];

char

coursename[20];

}stu1=

={1001,"李芳","C语言程序设计"},stu2;语句中,正确的语句是(

)。

A:printf(“%d%s%s

\n”,stu1);

B:scanf

("%d%s%s”,&stu1);C:stu2={1002,"张林","高等数学"};D:stu2=stu1;

答案:stu2=stu1;当输入为"quert?"时,下面程序的执行结果是(

)#includemain(){char

c;c=getchar();while((c=getchar())!='?')

putchar(++c);}

A:rvfsuB:quert?C:QuertD:rvfsu?

答案:rvfsu假设有结构体定义如下:struct

Date

{

int

month;

int

day;

int

year;

};

struct

Stu

{

int

num;char

name[20];

char

sex;int

age;

struct

Date

birthday;

}a;

int

year

;语句中,错误的语句是(

)。

A:=”zhang”B:a.age=10;C:a.birthday.month=12;D:year=a.birthday.year=2020;

答案:=”zhang”执行下面的程序段后,变量k中的值为(

)。int

k=3,s[2];s[0]=k;

k=s[1]*10;

A:10B:30C:33D:不定值

答案:不定值若有定义语句:char

s[100],d[100];

int

j=0,i=0;

,且s中已赋字符串,实现将字符串s中的内容拷贝到字符串d中,划线处语句为(

)。(注意:不得使用逗号表达式)

while(s[i])

{

d[j]=__;

j++;

}

d[j]=0;

A:s[j]B:s[i++]C:s[++i]D:s[i]

答案:s[i++]如果c为字符型变量,空格字符的ASCII码为十进制数32,判断c是否为空格不能使用(

)。

A:if(c=='

')B:if(c==32)C:if(c=='\040')D:if(c=='32')

答案:if(c=='32')程序执行后的输出结果是(

)。main(){

int

i,j,a[3][3];

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

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

a[i][j]=i*j;

printf("%d,%d\n",a[1][2],a[2][1]);

}

A:2,2B:2C:不定值,2D:2,0

答案:不定值,2程序的输出结果是(

)。

struct

HAR

{

int

x;

int

y;

struct

HAR

*p;

}h[2];

int

main()

{

h[0].x=1;

h[0].y=2;

h[1].x=3;

h[1].y=4;

h[0].p=&h[1];

h[1].p=h;

printf("%d%d\n",(h[0].p)->x,(h[1].p)->y);

}

A:23B:32C:12D:14

答案:32程序执行后的输出结果是(

。(设a[0][0]

是数组a中的第1个元素)

#include

main(

)

{

int

a[4][5]={1,2,4,8,10,-1,-2,-4,-8,-10,3,5,7,9,11};

int

i,j,n=9;

i=n/5;

j=n-i*5-1;

printf("NO.

%d:

%d,%d

is

%d\n",n,i,j,a[i][j]);

}

A:第i行的最大元素所在的行和列及其最大值B:第n行的最大元素所在的行和列及其最大值C:第n个元素所在的行和列及其该元素的值D:都不对

答案:第n个元素所在的行和列及其该元素的值程序段(

)x=-1;

do

{

x=x

*

x;}

while(!x);

A:循环执行二次

B:是死循环C:有语法错误D:循环执行一次

答案:循环执行一次对于变量定义int

a;

float

b;语句scanf("%2d%f",&a,&b);在运行时输入1235.6,则a获得的值为(

)。

A:12B:123C:报错D:1235

答案:12设有数组定义:char

array[]='China';则数组array所占的存储空间为(

)。

A:5个字节B:4个字节C:6个字节D:7个字节

答案:6个字节对于变量定义char

ch='\141';请问语句printf("%c",ch);的输出结果为(

)。

A:‘a’B:141C:报错D:‘b’

答案:‘a’程序段如下int

k=0;

while(k++<=2)

printf("%d\n",k);则执行结果是(

A:0B:123C:1D:2

答案:1已知int

a=010,

b=0x10,

c=10;则printf("%d,%d,%d\n",a,b,c);的输出结果为(

)。

A:8,16,10B:8,10,10C:8,8,10D:10,10,10

答案:8,16,10若有说明:int

n=2,*p=&n,*q=p,则非法的赋值语句是(

)。

A:n=*qB:*p=*qC:p=nD:p=q

答案:p=n若有定义:struct

link{

int

有int;struck

link

*next;}a,b,c,*p=&a,*q=&c;且变量a和b之间已有如下图所示的链表结构:a

bdata

next

data

next┌──┬──┐

┌──┬──┐│

5

──>

9│

0

│└──┴──┘

└──┴──┘则能够把c插入到a和b

之间并形成新的链表的语句组是_______(

)。

A:p->next=&c;

q->next=p->next;B:(*p).next=q;

(*q).next=&b;C:a.next=c;

c.next=b;D:p.next=q;

q.next=p.next;

答案:(*p).next=q;

(*q).next=&b;定义结构体数组:struet

St{char

name[15];int

age;)a[10]={”ZHANG”,14,”WANG”,15,”LIU”,16,”ZHANG”,17);执行语句printf(”%d,%c”,a[2].age,*(a[3].name+2))的输出结果为(

)。

A:17,HB:16,H

C:16,A

D:15,A

答案:16,A对结构变量stul中成员age的非法引用是(

)。struct

student{

int

age;

int

num;}stu1,*p;p=&stu1;

A:stu1.ageB:p->ageC:student.ageD:(*p).age

答案:student.age程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。例如,输入的字符串为:556,则输出十进制整数366,划线处应填(

)。#include

main(){

char

s[6];

int

n,j;

gets(s);

if(s[0]!='\0')

n=s[0]-'0';

j=1;

while(s[j++]!='\0')

____;

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

}

A:n=n*8+s[j-1]-'0'B:n=n*8+s[j]-'\0'C:n=n*8+s[j]D:n=n*8+s[j-1]-'\0'

答案:n=n*8+s[j-1]-'0'设有类型说明

enum

color

{red,yellow,black=100,blue

},则执行语句:

printf(“%d”,

yellow);输出结果是(

)。

A:yellowB:1C:99D:不确定

答案:1若有

int

x=9;

float

y;

则执行语句y=x/4;

输出的结果是(

)。

A:2.250000B:2.3C:2D:2.000000

答案:2.000000程序的输出结果是(

)。main(){

char

s[]={"12134211"};

int

v[4]={0,0,0,0},k,i;

for(k=0;s[k];k++)

{

switch(s[k])

{

case

'1':i=0;break;

case

'2':i=1;break;

case

'3':i=2;break;

case

'4':i=3;

}

v[i]++;

}

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

printf("%d

",v[k]);

}

A:8

8

8

8B:4

2

1

1C:0

0

0

8D:4

6

7

8

答案:4

2

1

1关闭文件的操作函数为(

)。

A:fscanf()B:fopen()C:fclose()D:fprintf()

答案:fclose()程序的功能是:按顺序读入10名学生的4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main(){int

n,k;float

score,sum,ave;sum=0.0;for(n=1;n<=10;n++){for(k=1;k<=4;k++){scanf("%f",&score);sum+=score};}ave=sum/4.0;printf("NO%d:%f\n",n,ave);}}程序有一条语句出现在程序的位置不正确。这条语句是(

A:sum+=score;B:ave=sum/4.0;C:sum=0.0;D:printf("NO%d:%f\n",n,ave);

答案:ave=sum/4.0;在C语言中,全局变量的存储类别是:(

A:voidB:externC:static

D:register

答案:static对于变量定义int

a;

float

b;语句scanf("%2d%*c%f",&a,&b);在运行时输入123c4.678,则b获得的值为(

)。

A:3.000000B:4.678000C:0.000000D:报错

答案:0.000000符合C语言语法的实型常量是(

)。

A:3.14EB:.5E-3C:1.2E0.5D:E8

答案:.5E-3有如下程序int

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

)。

A:*P+=9B:*P+9C:P+8D:*(P+8)

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

)。

A:a=0B:a<>0C:aD:!a

答案:a运行下面程序时,从键盘输入"1605",则输出结果是(

)#includeint

main(

){

int

t,h,m;

scanf("%d",&t);

h=(t/100)%12;

if

(h==0)

h=12;

printf("%d:",h);

m=t%100;

if

(m<10)

printf("0");

printf("%d",m);

if

(t<1200||t==2400)

printf("AM");

else

printf("PM");

printf("\n");

return

0;}

A:6:05PMB:16:05AMC:4:05PMD:12:05AM

答案:4:05PM设有数组定义:char

array[]="China";则strlen(array)的值为(

)。

A:7B:5C:4D:6

答案:5若i,j已定义为int型,则]程序段中循环体的总的执行次数是(

)for(i=5;i;i--)

for(j=0;j<4;j++){

}

A:24B:30C:20D:25

答案:204个变量定义中,定义p为指针数组的是(

)。

A:int

(*p)[10];B:int

(*p)(

);C:int

**p;D:int

*p[10];

答案:int

*p[10];条件表达式中能完全等价于条件表达式if(x)的是(

)。

A:if(x!=1)B:if(x==1)C:if(x==0)D:if(x!=0)

答案:if(x!=0)若当A的值为奇数时,表达式的值为"真",A的值为偶数时,表达式的值为"假",则下面不能满足要求的表达式是(

)。

A:!(A%2)B:!(A%2==0)C:A%2D:A%2==1

答案:!(A%2)有函数fun(char

*a,char

*b)

{

while((*a!='\0')&&(*b!='\0')&&(*a==*b))

{

a++;b++;

}

return(*a-*b);

}该函数的功能是(

)。

A:将b所指字符串连接到a所指字符串后面B:比较a和b所指字符串的大小C:计算a和b所指字符串的长度之差D:将b所指字符串连接到a所指字符串中

答案:比较a和b所指字符串的大小设在主函数中有定义和函数调用语句,且fun函数为void类型;正确的fun函数的首部应为(

)(要求形参名为b)。

int

main()

{

double

s[10][22];

int

n;

fun(s);

∶return

0;

}

A:void

fun(double

b[][])

B:void

fun(double

b[][22])C:void

fun(double

b[22][])D:void

fun(double

b[22])

温馨提示

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

评论

0/150

提交评论