牛客网习题总结 一

牛客网习题总结 一_第1张图片

解题思路:

转移字符分三种,一般转义字符,八进制转移字符和十六进制转移字符

一般转义字符,如‘\b’,由两个字符表示,其实代表一个字符,这个代表退格字符

八进制转义字符,如‘\007’,三位数字是八进制的,ASCII码为7的表示响铃

十六进制,如'\xfe',同样后面数字是所表示意思的Ascii码的十六进制表示,注意一定要有x,大小写都行

 

 

 

 

 

牛客网习题总结 一_第2张图片

解题思路

对于本题,不用纠结于起始位置到底在哪里,题目已经告诉我们了A[1][1]的地址,只需要求题目要求的元素与A[1][1]之间有多少个元素就阔以了。 A[5][5]与A[1][1]之间有4*12+4=52个元素,而A[1][1]地址为420,那么A[5][5]的地址就为420+52=472 

 

 

 

 

 

牛客网习题总结 一_第3张图片

解题思路:

在一个长度为n的顺序表中删除第i个元素时,i的后面还有n-i个元素,删除i之后将i后面的所有元素都要向前移动一个位置

1 2 3 4 5 6 7 8  将5移除  后面 8-3位数字向前移动

 

 

 

牛客网习题总结 一_第4张图片

解题思路:

A是a[i][j]的地址

D是A再取*则是a[i][j]的值

C正确,a[i]为第i行第0个元素的值,加j后为a[i][j]地址,再取*就是a[i][j]

B正确,a[0][0]取地址是数组第一个元素的地址,加上10*i为第i行第0个元素的地址,在加j是a[i][j]地址,再取*是a[i][j]的值

 

 

牛客网习题总结 一_第5张图片

解题思路:

a[i][j] 位于第 i+1 行,    所以用 i*n 来计算第 i+1 行上面元素的个数,然后再加 j 个列元素。    最后拿整个元素的个数乘以每个元素的大小,    再加初始地址,就是 a[i][j] 的地址。


牛客网习题总结 一_第6张图片

解题思路:

2、3、5的最小公倍数是30。[ 1, 30]内符合条件的数有22个。如果能看出[ 31, 60]内也有22个符合条件的数,那问题就容易解决了。也就是说,这些数具有周期性,且周期为30.

       第1500个数是:1500/22=68   1500%68=4。也就是说:第1500个数相当于经过了68个周期,然后再取下一个周期内的第4个数。一个周期内的前4个数:2,3,4,5。
故,结果为68*30=2040+5=2045

 

 

牛客网习题总结 一_第7张图片

解题思路:

. cin>>

该操作符是根据后面变量的类型读取数据。

输入结束条件 :遇到Enter、Space、Tab键。

对结束符的处理 :丢弃缓冲区中使得输入结束的结束符(Enter、Space、Tab)  

遇到空格便会结束

 

 

牛客网习题总结 一_第8张图片

解题思路:

注意题目意思,是用于执行,而不是这种数据结构本身需要递归。递归的展开和回归就是栈的特点,即先进后处,最里层的递归后返回。

牛客网习题总结 一_第9张图片

解题思路:

注意 是对数组中元素的引用 a为数组名 也代表数组首元素的地址值 *p=a则p也指向数组a的第一个元素地址,则*(p+2)指向数组a中第三个元素

你可能感兴趣的:(习题总结)