22秋西交《程序设计基础》在线作业[答案][答案]

作者:奥鹏作业答案 字体:[增加 减小] 来源:西安交通大学 时间:2023-02-09 00:55

西交《程序设计基础》在线作业-00001 试卷总分:100 得分:100 一、单选题 (共 20 道试题,共 40 分) 1.以下叙述中正确的是( ) A.构成C程序的基本单位是函数 B.可以在一个函数中定义另一个函数 C.main()

22秋西交《程序设计基础》在线作业[答案][答案]

22秋西交《程序设计基础在线作业[答案]

正确答案:A

西交《程序设计基础在线作业-00001

正确答案:B

试卷总分:100  得分:100

一、单选题 (共 20 道试题,共 40 分)

1.以下叙述中正确的是(     )

A.构成C程序的基本单位是函数

B.可以在一个函数中定义另一个函数

C.main()函数必须放在其他函数之前

D.C函数定义的格式是K&R格式

正确答案:C

 

2.以下叙述中不正确的是(      )

A.在不同的函数中可以使用相同的名字的变量

B.函数中的形式参数是局部变量

C.在一个函数内定义的变量只在本函数范围内有效

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

正确答案:B

 

3.以下叙述中不正确的是()。

A.一个好的程序应该有详尽的注释

B.在C程序中,赋值运算符的优先级最低

C.在C程序中,j++;是一条赋值语句

D.C程序中的#include和#define均不是C语句

正确答案:D

 

4.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是()。

A.EOF

B.0

C.非零值

D.NULL

正确答案:D

 

5.设C语言中,int类型数据占2个字节,则short类型数据占()。

A.1个字节

B.2个字节

C.4个字节

D.8个字节

正确答案:B

 

6.每条C语句后面都要有一个( )

A.逗号

B.冒号

C.分号

D.括号

正确答案:A

 

7.关于建立函数的目的,以下正确的说法是()。

A.提高程序的执行效率

B.提高程序的可读性

C.减少程序的篇幅

D.减少程序文件所占内存

正确答案:D

 

8.关于链表的插入和删除,下列说法错误的是( )

A.插入位置包括表头、表中和表尾

B.从链表中删除一个结点,就是把它从内存中抹掉。

C.要删除链表中的某个结点,需自己定义删除函数。

D.删除结点要注意删除的结点是否是头结点

正确答案:A

 

9.用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是()。 long a=0xffffff; int b; char c;

A.0ffffff 和0x61

B.-1和98

C.-1和97

D.指向同一地址

正确答案:D

 

10.下列类型中错误的是( )

A.unsigned

B.unsigned float

正确答案:D

C.unsigned long int

正确答案:D

正确答案:B

D.unsigned int

正确答案:C

正确答案:C

 

11.在C语言中,char型数据在内存中的存储形式是()。

A.补码

B.反码

C.原码

D.ASCII码

正确答案:A

 

12.{图}。

A.A

B.B

C.C

D.D

正确答案:B

正确答案:C

 

13.以下不能正确定义二维数组的选项是( )

A.int a[2][2]={{1},{2}};

B.inta[][2]={1,2,3,4};

C.int a[2][2]={{1},2,3};

D.int a[2][]={{1,2},{3,4}};

正确答案:D

 

14.下列程序的输出结果是()。 main() { int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) { case 0:a++;break; case 1:b++;break; } case 2:a++;b++;break; case 3:a++;b++;break; } printf("a=%d,b=%d ",a,b); }

正确答案:A

A.a=1,b=0

B.a=2,b=1

C.a=1,b=1

D.a=2,b=2

正确答案:C

 

15.若有int *p=(int *)malloc(sizeof(int));则向内存申请到内存空间存入整数123的语句为()。

A.scanf("%d",p);

正确答案:D

B.scanf("%d",&p);

正确答案:D

C.scanf("%d",*p);

正确答案:A

D.scanf("%d",**p);

正确答案:B

 

16.若已定义:

int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a,i;

其中 0≤i≤9, 则对a数组元素不正确的引用是(     )

A.a[p-a]

B.*(&a[i])

C.p[i]

D.a[10]

正确答案:B

 

17.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为()。

A.1

B.2

C.3

D.不一定

正确答案:A

 

21.下列哪个不是算法的特征( )

A.有穷性

B.可行性

C.不确定性

D.输入

正确答案:D

 

19.以下运算符中,优先级最高的运算符是()。

A.||

B.%

C.!

D.==

正确答案:D

 

20.C语言中,定义结构体的保留字是()。

A.union

B.struct

C.enum

D.typedef

正确答案:D

 

22秋西交《程序设计基础》在线作业[答案]多选题答案

正确答案:C

二、多选题 (共 20 道试题,共 40 分)

21.定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有()。

正确答案:B

A.1112<回车>

B.11,<空格>12<回车>

C.11,12<回车>

D.11,<回车>12<回车>

正确答案:C

 

22.能正确表示逻辑关系"a≥10"的C语言表达式是()。

A.a≥10

B.!(a<10)

C.a>=10

D.x4=1+2=3;

正确答案:A

 

23.关于while语句与do-while语句,以下正确的是()。

正确答案:C

A.while是当型结构

B.do-while是直到型结构

正确答案:C

C.两者有区别

D.两者无区别

正确答案:C

 

24.正确的if语句形式是()

A.if (x>y && x!=y);

B.if (x==y) x+=y;

C.if (x!=y) scanf("%d",&x) else scanf("%d",&y);

正确答案:C

D.if (x<y) {x++;y++;}

正确答案:C

 

25.以下不符合C语言语法的实型常量是()。

A.1.2E0.5

B.3.14.159E

C..5E-3

D.E15

正确答案:D

 

26.以下选项中属于C语言的类型有哪几项

A.signed short int

正确答案:C

B.unsigned long int

C.unsigned int

D.long short

正确答案:D

 

27.结构体如下所示 

struct employees

{  char name[30];

  int age;

   float wage;

}

下面说法正确的有哪几项(  )

A.上述形式的定义在程序运行时不会为该结构体类型分配内存空间

B.结构体变量在内存中存放时,占用连续的一段存储空间

C.上述结构体必须有关键字struct

D.上述结构体成员的类型不可以是已经定义过的结构体类型

正确答案:B

 

28.以下选项中不合法的字符常量是()。

A."B"

B.'\010'

C.68

D.D

 

21.关于for(表达式1,表达式2,表达式3)循环,以下正确的是()。

A.三个表达式都不可省略

B.表达式1可以省略

C.表达式2可以省略

D.表达式3可以省略

正确答案:B

 

30.以下叙述正确的是( )

A.预处理命令行都必须以"#"开始

B.在程序中凡是以"#"开始的语句行都是预处理命令行

C.C程序在执行过程中对预处理命令行进行处理

D.#define ABCD是正确的宏定义

正确答案:B

 

31.下列哪些是算法的描述方法( )

A.自然语言描述法

B.流程图描述法

C.伪代码描述法

D.N-S流程图描述法

正确答案:C

 

32.下面那些为合法整型常量()

A.190

B.0xf

C.0765

D.0xk

正确答案:A

 

33.以下函数,哪些属于动态申请空间的标准库函数

A.malloc()

B.calloc()

C.free()

D.strcmp()

正确答案:A

 

30.以下描述正确的是()。

A.使用while和do-while循环时,循环变量初始话的操作应在循环体语句之前完成

正确答案:D

B.while循环是先判断表达式,后执行循环语句

C.do-while和for循环均是先执行循环语句,后判断表达式

正确答案:D

D.for,while和do-while循环中的循环体均可以由空语句构成

正确答案:C

 

27.计算机算法可以分为两大类(  )

A.数值运算算法

B.非数值运算算法

C.符号运算算法

D.非符号运算算法

正确答案:A

 

39.能正确表示逻辑关系"a≥10"的C语言表达式是()。

A.a≥10

B.!(a<10)

C.a>=10

D.a<10

正确答案:D

 

23.下列选项中是C语言合法标志符的有()。

A.good_morning

正确答案:B

B.main

C.stdio.h

正确答案:D

D.8abc

正确答案:B

 

37.设有以下定义int a=0;double b=1.25;cha rc='A';#defined2则下面语句中正确的是()。

正确答案:D

A.a++;

B.b++;

C.c++;

D.d++;

正确答案:A

 

39.t为int类型,进入下面的循环之前,t的值为0do{………}while(t==1);则以下叙述中正确的是()

正确答案:A

A.循环控制表达式的值为1

B.循环控制表达式的值为0

C.循环控制表达式合法

D.其他说法都不对

正确答案:B

 

40.以下选项中,合法的字符常量是()。

A.' '

B.'17'

C."n"

D.'xaa'

正确答案:C

 

三、判断题 (共 10 道试题,共 20 分)

41.对C语言中用到的任何一个变量都要规定其类型。( )

 

42.C中*&a是取变量a的地址。()

 

43.C程序中,当调用函数时,由实参把值传递给形参,调用结束后,再由形参把值传回给实参。()

 

44.C语言中的标识符以字母或下划线开头,可跟任何字符。( )

 

45.按现代风格设计的C程序中,main中对函数声明的信息与定义此函数时第一行的信息完全相同。( )

 

46.格式字符%md中的m只能为正,不能为负。()

正确答案:B

 

47.c程序是由c文件构成,而c文件是由函数构成()

 

48.被main函数调用的函数只能是库函数。( )

 

41.C程序中的每一行就是一个语句。( )

 

50.全局变量的作用域一定比局部变量的作用域范围大。()

 

22秋西交《程序设计基础》在线作业[答案]历年参考题目如下:




20秋学期《高级语言程序设计基础》在线平时作业1

试卷总分:100  得分:100

一、单选题 (共 20 道试题,共 100 分)

1.执行下面程序段后,x的值是( )。 int x;printf("%d ",(x=3*5,x+5));

A.10

B.15

C.20

D.5

 

2.若执行下述程序时从键盘输入3 4,则输出结果是( )。

#include main( ) { int a,b,s;  

scanf("%d%d",&a,&b);

 s=a;  if (a<b)  printf("%d ",s*s); s=b;  }

A.186

B.256

C.324

D.400

 

3.已知学生记录描述如下,下面对结构体成员"computer"的赋值方式正确的是( )。 struct student { int num; char name[8]; struct { float math; float engl; float computer; } mark;} std;

A.student.computer=84;

B.mark.computer=84;

C.std.mark.computer=84;

D.std.computer=84;

 

4.下程序( )。     main( )    { int x1=3, x2=0, x3=0;       if (x1=x2+x3) printf("* * * *"); else printf("# # # #");    }

A.输出:* * * *

B.输出:# # #

C.#存在语法错误

D.无输出结果

 

5.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。

A.*pc[0]代表的是字符串"aaa

B.*pc[0]代表的是字符'a'

C.pc[0]代表的是字符串"aaa"

D.pc[0]代表的是字符'a'

 

6.以下正确的函数说明是( )。

A.int fun(int a, b)

B.float fun(int a; int b)

C.double fun( )

D.int fun(char a[ ][ ])

 

7.若a为int类型变量,则执行以下程序段后a的值为( )。 a=5;a*=a/=a++;

A.2

B.1

C.40

D.3

 

8.若有定义:int x[10], *p=x;,则*(p+5)表示( )。

A.数组元素x[5]的地址

B.数组元素x[5]的值

C.数组元素x[6]的地址

D.数组元素x[6]的值

E.选项内容11

F.选项内容11

 

9.函数rewind(fp)的作用是:使文件位置指针( )。

A.重新返回文件的开头

B.返回到前一个字符的位置

C.指向文件的末尾

D.自动移至下一个字符的位置

 

10.执行以下程序段后,y的值是( )。 int a[ ]={1, 3, 5, 7, 9} int x=0, y=1, *ptr; ptr=&a[1]; while (!x) { y+=*(ptr+x); x++; }

A.1

B.2

C.4

D.24

 

11.若有定义:int x[10], *p=x;,则*(p+5)表示( )。

A.数组元素x[5]的地址

B.数组元素x[5]的值

C.数组元素x[6]的地址

D.数组元素x[6]的值

E.选项内容11

F.选项内容11

G.选项内容11

 

12.以下运算正确的程序段是( )。

A.char str1[]="ABCDE", str2[]="abcdef"; strcpy(str1, str2);

B.char str[10], *st="abcde"; strcat(str, st);

C.char *st1="ABCDS", *st2="abcde"; strcat(st1,st2);

D.char str[10]="", *st="abcde"; strcat(str, st);"

 

13.设c1、c2均是char类型变量,则以下不正确的函数调用是( )。

A.scanf("c1=%cc2=%c",&c1,&c2);

B.getchar( )

C.putchar(c2);

D.putchar(c1,c2)"

 

14.以下能正确定义整型变量x、y和z并为其赋初值5的语句是( )。

A.int x=y=z=5;

B.int x,y,z=5;

C.int x=5,y=5,z=5;

D.x=5,y=5,z=5;"

 

15.若a、b、c均为int型变量,则执行以下程序段后的输出结果为( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d ",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d ",a,b,c);

A.a=10,b=15,c=10a=10,b=5,c=10

B.a=10,b=10,c=10a=10,b=5,c=10

C.a=10,b=10,c=10a=10,b=5,c=15

D.a=10,b=10,c=10a=10,b=5,c=5

 

16.若希望当num的值为奇数时,表达式的值为“真”,num的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是( )。

A.num%2==1

B.!(num%2==0)

C.!(num%2)

D.num%2

 

17.若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。

A.2

B.3

C.4

D.无确定值

 

18.若a和b均为int型变量,则执行以下程序断后x的输出是( )。 x=15;y=15;printf("%d ",x%=(y%=2));

A.0

B.1

C.6

D.12

 

19.以下对指针变量的操作中,不正确的是( )。

A.int p, *q; q=&p;

B.int *p, *q; q=p=NULL;

C.int a=5, *p; *p=a;

D.int a=5, *p=&a, *q=&a; *p=*q;"

 

作业咨询:
点击这里给我发消息

论文咨询:
点击这里给我发消息

合作加盟:
点击这里给我发消息

服务时间:
8:30-24:00(工作日)