C语言链表规律插入问题

1.用C语言自定义链表,使得插入的第一个数据为0X01,第二个数据为0x0202,第三个数据为0X030303,第N个数据为0Xnn...n,并通过输入数据,查找出为第几个数据(请教一下,在插入数据是这一段的代码,和插入时数据的规律和思路,万分感谢!)

2.测试用例的设计思路

如果n 小于等于 255 (0xFF)  那么就很好做  

列个数据表  看看规律  第几个节点就开几个字节的空间 同时每个字节都赋值为相应的值

链表节点位  数据  字节大小 内存中二进制

1  0x01  1字节  0000 0001

2  0x0202  2字节  0000 0010 | 0000 0010

3  0x030303  3字节  0000 0011 | 0000 0011 | 0000 0011

4  0x04040404  4字节  0000 0100 | 0000 0100 | 0000 0100 | 0000 0100

......

255 0xFF...FF 255字节 1111 1111 |......| 1111 1111

......

如果n没有限制大小  会稍微复杂些

我的想法是 节点大于1个字节的最大值 每次申请2个字节 (可以强转为short来赋值)

如果数据这么有规律, 那么一个简单的算法就推导出来了, 不用再搞链表来插入。