pta选择、填空错题集合
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.以下选项中不正确的整型常量是(D). (2分)
A.12L
B.-10
C.012
D.2,900
//u是unsigned的意思,代表无符号整型带L的是长整型字面值常量,不带的是整型字面值常量。
2.若B)。 (2分)
A 2.5
B 2.0
C 2
D 3
3.在C语言中,数字029是一个(D )。 (2分)
A.八进制数
B.十进制数
C.十六进制数
D.非法数
//0开头表示8进制,但8进制没有字符9的。0x开头表示十六进制。
4.以下名字,不能作为C语言标识符的是:C (2分)
A.ThisIsQingdaoUniversity
B.$$
C.monkey~1
D._
//c语言也是要看编译器的,在vs2012中默认的编译器以美元符号开头的标识符是可以的。
5.if(a=5) 是允许的。T (1分)
T F
//if判断为真。
6.增1减1运算符的前缀运算和后缀运算的表达式值是相同的。 (1分)
T F
//表达式值不一样,执行过后变量值一样。
7.C语言程序是从源文件的第一条语句开始执行的。F (1分)
T F
//从main开始。
8.break语句只能用于循环语句中。F (5分)
T F
//switch语句也可用。
9.1。T (5分)
T F
//真为1,假为0,无论 (3 10.结构化程序设计规定的基本控制结构包括顺序、选择、循环。T (1分) T F 11.当a=1,b=3,c=5,d=4,x=0 时,执行完下面一段程序后x的值是(B)(1分) A.7 B. 2 C. 3 D. 6 12.在C语言中,要求运算数必须是整型的运算符是(A)。 (4分) A.% B./ C.< D.! 13.使用“scanf("X=%f,y=%f",&x,&y)”,要使 X,y均为1.25,正确的输入是( C ) (4分) A. 1.25,1.25 B. 1.25 1.25 C.X=1.25,y=1.25 D.X=1.25 y=1.25 //格式一致 14.如果函数定义出现在函数调用之前,可以不必加函数原型声明。T (1分) T F //1,要么是先使用,就不需要再定义函数了 例如: void p() { // } void main() { p(); } .... 2,先定义再使用,这时候,必须先要定义函数,不然编译器不识别此函数的 void p(); void mian() { p(); } void p() { // } // 15.有说明语句__。 (2分) A. B. C. D. 16.对于定义0为数字零),求字符串str的长度len和数组str的大小size,len和size分别是:C (2分) A.12 ,13 B. 3 ,11 C. 3 ,9 D. 3 ,4 //\n\0在字符串中占一个字符 \000后面八进制数表示ascii的符 号。 17.有两个字符数组a,b,则以下正确的输入语句是(B) (1分) A. B. C. D. //不要地址符。 18.静态变量的作用域是整个文件。F (2分) T F // 对于C语言,静态变量也分全局静态变量和局部静态变量,对于全局静态变量,它的作用域是整个文本。 但是如果是局部静态变量则它的作用域仅仅是定义它的区域。 19.根据声明C)。 (2分) A.a[9] B.p[5] C.a++ D.*p++ //D a是常量不能自增 20.__。(2分) A. B. C. D. //scanf("%d",p->age);这个是错误的,因为scanf输入时,要将值放到地址里,所以要加上&,&表示取址。 scanf("%s",pup[0].name);这一项是正确的,因为name本身就是字符数组,所以它的数组名就是字符串的首地址,所以符合要求; scanf("%d",&pup[0].age); c)scanf("%d",&(p->sex));这两项也是正确的,解释和第一项一样。 21.在基类型相同的两个指针变量之间,不能进行的运算是(D)。 (2分) A.< B.= C.+ D.– //指针存的是内存的地址值, 假如两个指针, 一个指向0x80008000, 一个指向0x80008020; A: 可以判断这两个指针哪个指向后面, 哪个指向前面. B: 判断两个指针是否指向同一块内存地址 C: 指向相加, 那么大个数代表什么? 可能都越界了内存区域. D: 相减得到两个指针的差值. 即他们之间相差多少. 22.以下哪个定义中的 C (2分) A. B. C. D. //*p[10]是指针数组,其每个元素是指针。 23.直接访问就是直接利用变量的地址直接进行访问。T (2分) T F //1.直接访问 按照C的方式,如果定义一个变量,系统会给这个变量分配一块内存,变量有两个属性,变量值和变量地址。变量地址指示了该变量在内存中的存储位置,变量值是这块内存中的内容。要访问这块内存空间上的内容,可以直接使用变量名。 2.间接访问 间接访问的含义是先从其它内存空间获得要访问的内存地址,根据得到的地址访问目的地址。