2018 C笔试题
- 2020 年 3 月 4 日
- 笔记
⼀、单项选择题(15⼩题,每⼩题2分,共30分)
解析:【传值调用】,实参和形参之间传递的是“地址”
解析:【优先级】:算术运算符 > 关系运算符 > 赋值运算符
【结核性】:赋值运算符(从右至左) 算数运算符和关系运算符(从左至右)
相当于: ( k > i ) < j , ( i < j ) == ( j < k )
解析:指针数组是指数组的每一个元素都是一个指针变量的数组
相当于: point[2] 一样
例如:
解析:数组定义时,常量表达式中不允许包含变量
解析:【函数递归】,相当于 fib (2) + fib (1)
解析:【do 循环】
解析:【数组传参】:传过去的是地址,实参和虚参都改变
题目有错!!!
解析:【运算优先级】:“ * ”和“ ++ ” 高于 ” = “,“ * ”和“ ++ ”优先级相同,结合性:从右往左
*p1 += *p2++ 相当于: *p1 = *p1 + *(p2++)
*p2 = p1++ 相当于: *p1 = (p1++)
解析:【运算优先级】+ 【结合性】
i = 3 / 2 + 7 / 2 == 5 相当于: i = ( ( (3 / 2) + (7 / 2) ) == 5 )
j = 45 % 11 + (((7 > 8) ? 15: 14) == 14 相当于:j = (45 % 11) + ((((7 > 8) ? 15: 14) == 14 )
解析:!x是逻辑非操作,当x为0时,值为真,否则值为假。 在这里等效于x==0 ,即x = 8,while (!x) 为假,退出循环
例如:
解析:(i * j) / k + 6 – 15 % k 相当于 ((i * j) / k) + 6 – (15 % k) : “+”和“-” 结合性从左向右
解析: while()是循环语句。while(expr)表示当逻辑表达式expr为真时,循环运行循环体,直到expr值为假或遇到break语句时退出
由 316 = 13 * i + 11 * j 得:k 一定得是11的倍数
例:
解析:【字符数组的定义】:
char cc[ ] = {‘1′,’2′,’3′,’4′,’5’}, 数组长度为5,字符串长度为5
char cc[ ] =”12345“,数组长度为6,字符串长度为5,自动在字符串结尾加上一个终止符