持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第14天,点击查看活动详情
选择题
我们看见字符数组里面的最后一个字符是0,说明里面本身就是一个字符串——
"123456789"
,p指向的9,那么p-3就是指向6,下面就是从6开始打印字符串了。
本题考查
switch,case
语句,x%2
为1,指向case 1
,y=3,执行case 3
,但是没有就执行defalut
,此时输出hello
,没有遇见break
,继续执行case 2
,打印third
。即选D
对于二维数组,可以不指定具体行,但是必须指定具体列,行可以根据初始化自动判断,D选项中两个
,
之间没有数,这是语法错误。C选项,初始化的行数超过个预定的值(2)。
return
只能返回一个值。所以选A,
这是一个指针数组,p先和
[]
结合,所以选c。A整型数组,B指针,C指针数组,D数组指针。
D选项ch从输入之后就没有变化,死循环在里面了。不能统计字符的个数。
数组名表示数组首元素的地址。
ptr+5
就是指向f
。所以选B。
这一道题在第2天的笔试强训中讲过了。
数组里面有12个元素,每个元素都是指针类型,在32位系统中,指针的大小是4个字节的大小。所以占48个字节的大小。
本题涉及的知识点 小端是:数据的低位存在低地址 大端是:数据的低位存在高地址 看下面的它们从数据在内存中的存储:
。
long long
是8个字节的大小,%d
是按10进制打印int
类型的。从低地址开始读取,一次读4个字节。所以选B。
编程题
遍历字符串找到连续的数字串,比较每个数字串的长度就行。
我们用消数字的方法,就是如果相邻的数字不相同,就消掉。因为众数超过一半,所以剩的就是众数。 怎么消数呢?我们先暂定第一个数是众数,记录该数出现的次数。然后依次遍历该数组。当它的次数为0的时候,说明不是众数,则开始假设下一个数字是众数,最后遍历完数组之后就可以得到众数了,同时要验证一下该数是不是众数。验证方法就是从新遍历,判断该数出现的次数。