西交《程序设计基础》在线作业(答案)

作者:奥鹏周老师 分类: 西安交通大学 发布时间: 2019-08-03 14:54
作业答案 联络QQ:3326650399 微信:cs80188
西交《程序设计基础》在线作业
试卷总分:100    得分:0
一、 单选题 (共 20 道试题,共 40 分)
1.C言语中,界说结构体的保存字是()
A.union
B.struct
C.enum
D.typedef
 
 
 
2.C言语中,需求运管用有必要是整型的运算符是()
A.^
B.%
C.!
D.>
 
 
 
3.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.不必定
 
 
 
4.结构体类型的界说答应嵌套是指()
A.成员是现已或正在界说的结构体型
B.成员可以重名
C.结构体型可以派生
D.界说多个结构体型
 
 
 
5.逻辑运算符两边运算对象的数据类型()
A.只能是0或1
B.只能是0或非0正数
C.只能是整型或字符型数据
D.可所以任何类型的数据
 
 
 
6.若二维数组a有m列,则在a[i][j]前的元素个数为()
A.j*m+i
B.i*m+j
C.i*m+j-1
D.i*m+j+1
 
 
 
7.若有int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出成果不为5的语句为()
A.printf("%d",*(a+5));
B.printf("%d",p[5]);
C.printf("%d",*(p+5));
D.printf("%d",*p[5]);
 
 
 
8.设 int x=1, y=1; 表达式(!x||y--)的值是()
A.0
B.1
C.2
D.-1
 
 
 
9.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()
A.int
B.float
C.double
D.不断定
 
 
 
10.下列程序的输出成果是()。 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\n",a,b); }
A.a=1,b=0
B.a=2,b=1
C.a=1,b=1
D.a=2,b=2
 
 
 
11.下列选项中正确的语句组是()
A.char s[8]; s={"Beijing"};
B.char *s; s={"Beijing"};
C.char s[8]; s="Beijing";
D.char *s; s="Beijing";
 
 
 
12.以下不能正断界说二维数组的选项是()
A.int a[2][2]={{1},{2}};
B.int a[][2]={1,2,3,4};
C.int a[2][2]={{1},2,3};
D.int a[2][]={{1,2},{3,4}};
 
 
 
13.以下数值中,不正确的八进制数或十六进制数是()
A.0x16
B.16
C.-16
D.0xaaaa
 
 
 
14.以下叙说正确的是()
A.在C程序中,main函数有必要位于程序的最前面
B.C程序的每行中只能写一条语句
C.C言语本身没有输入输出语句
D.在对一个C程序进行编译的进程中,可发现注释中的拼写差错
 
 
 
15.以下叙说中正确的是()
A.C言语的源程序不必经过编译就可以直接运转
B.C言语中的每条可实施语句究竟都将被变换成二进制的机器指令
C.C源程序经编译构成的二进制代码可以直接运转
D.C言语中的函数不可以以单独进行编译
 
 
 
16.以下选项中,与k=n++完全等价的表达式是()
A.k=n,n=n+1
B.n=n+1,k=n
C.k=++n
D.k+=n+1
 
 
 
17.以下运算符中,优先级最高的运算符是()
A.*=
B.>=
C.(类型)
D.+
 
 
 
18.用户界说的函数不可以以调用的函数是()
A.非整型回来值的
B.这篇文章件外的
C.main函数
D.本函数下面界说的
 
 
 
19.用下列语句界说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.指向同一地址
 
 
 
20.在调用函数时,假定实参是简略变量,它与对应形参之间的数据传递方法是()
A.地址传递
B.单向值传递
C.由实参传给形参,再由形参传回实参
D.传递方法由用户指定
 
 
 
二、 多选题 (共 20 道试题,共 40 分)
1.界说语句:int x,y;若要经过scanf("%d,%d",&x,&y); 语句使变量x得到数值11,变量y得到数值12,下面四组输入方法中,正确的有()
A.11 12
B.11,12
C.11,12
D.11, 12
CD
 
 
2.对do-while语句描绘正确的是()
A.do-while语句构成的循环可以运用break语句退出循环
B.do-while语句构成的循环有必要运用break语句退出循环
C.do-while语句构成的循环,当while中的表达式值为非零时结束循环
D.do-while语句构成的循环,当while中的表达式值为零时结束循环
D
 
 
3.若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是()
A.a=b=c=d=100;
B.d++;
C.c+b;
D.d=(c=22)-(b++);
BD
 
 
4.若以下选项中的变量已正断界说,则不正确的赋值语句是()
A.x1=26.8%3
B.x=3*x+x
C.x3=0x12
D.x4=1+2=3;
D
 
 
5.设有以下界说 int a=0; double b=1.25; char c='A'; #define d 2 则下面语句中正确的是()
A.a++;
B.b++;
C.c++;
D.d++;
BC
 
 
6.下列选项中是C言语合法标志符的有()
A.good_morning
B.main
C.stdio.h
D.8abc
B
 
 
7.以下4个选项中,可以看作是一条语句的有()
A.{;}
B.a=0,b=0,c=0;
C.if(a>0);
D.if(b==0) m=1;n=2;
BC
 
 
8.C言语中三种根柢的类型为()
A.int
B.char
C.float
D.struct
BC
 
 
9.以下描绘正确的是()
A.调用函数时,实参可所以表达式
B.调用函数时,实参加形参可以共用内存单元
C.调用函数时,将为形参分配内存单元
D.调用函数时,实参加形参的类型有必要共同
CD
 
 
10.以下叙说正确的是( )
A.C言语严肃区别巨细写英文字母
B.C言语用";"作为语句分隔符
C.C程序书写格局安闲,一行内可以写几个语句,一个语句也可以写在几行上.
D.可以运用/*…*/对C程序中的任何有些作注释
BCD
 
 
11.以下叙说正确的是( )
A.预处置指令行都有必要以"#"初步
B.在程序中但凡以"#"初步的语句行都是预处置指令行
C.C程序在实施进程中对预处置指令行进行处置
D.#define ABCD是正确的宏界说
BD
 
 
12.若以下选项中的变量已正断界说,则不正确的赋值语句是()。
A.int
B.x=3*x+x
C.x3=0x12
D.x4=1+2=3;
D
 
 
13.以下选项中,合法的字符常量是()
A.\t'
B.'\17'
C."n"
D.'\xaa'
BD
 
 
14.以下选项中不合法的字符常量是()
A."B"
B.'\010'
C.68
D.D
CD
 
 
15.下列对逻辑运算符两边的运算对象的数据类型描绘不正确的是()。
A.只能是0或1
B.只能是0或非0正数
C.a>=10
D.可所以任何类型的数据
BD
 
 
16.以下选项中合法的表达式是()
A.0<=x<100
B.i=j==0
C.(char)(65+3)
D.x+1=x+1
BC
 
 
17.以下用户标识符,其间合法的是()
A.return
B.f2_G3
C.A3-3
D.abc
D
 
 
18.能正确标明逻辑联络:"a≥10"的C言语表达式是()。
A.a≥10
B.!(a<10)
C.a>=10
D.x4=1+2=3;
C
 
 
19.在界说int a[2][3];之后,对a的引证正确的有()
A.a[0][2]
B.a[1,3]
C.a[1>2][!1]
D.a[2][0]
C
 
 
20.正确的if语句方法是()
A.if (x>y && x!=y);
B.if (x==y) x+=y;
C.if (x!=y) scanf("%d",&x) else scanf("%d",&y);
D.if (x<y) {x++;y++;}
BD
 
 
三、 判别题 (共 10 道试题,共 20 分)
1.break语句可用于switch语句,也可用于for、while和do循环语句中。( )
A.对
B.错
 
 
 
2.C程序中的每一行就是一个语句。( )
A.对
B.错
 
 
 
3.C言语的文件存取方法只能是次序存取,不能随机存取。( )
A.对
B.错
 
 
 
4.C言语中,feof函数用来判别即将读入的是不是是文件结束标志,它可用于二进制文件,但不能用于文这篇文章件。( )
A.对
B.错
 
 
 
5.若界说char *str;则str="BOOK";是正确的。( )
A.对
B.错
 
 
 
6.数组类型不是C的根柢数据类型,而是一种结构类型 。( )
A.对
B.错
 
 
 
7.一个C源程序可以由一个main()函数和若干个其它函数构成。( )
A.对
B.错
 
 
 
8.一个包括指令include可以包括几个头檔。( )
A.对
B.错
 
 
 
9.在某种意义上,char和int通用。( )
A.对
B.错
 
 
 
10.自增运算符和自减运算符的联系方向也是“自左向右”。( )
A.对
B.错

作业答案 联系QQ:3326650399 微信:cs80188