【奥鹏】[西安交通大学]西交《程序设计基础》在线作业(答案)
西交《程序设计基础》在线作业试卷总分: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前的元素个数为()
A.j*m+i
B.i*m+j
C.i*m+j-1
D.i*m+j+1
7.若有int a={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为()
A.printf("%d",*(a+5));
B.printf("%d",p);
C.printf("%d",*(p+5));
D.printf("%d",*p);
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; s={"Beijing"};
B.char *s; s={"Beijing"};
C.char s; s="Beijing";
D.char *s; s="Beijing";
12.以下不能正确定义二维数组的选项是()
A.int a={{1},{2}};
B.int a[]={1,2,3,4};
C.int a={{1},2,3};
D.int a[]={{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
页:
[1]