kata1:
我的代码:
别人的代码1:
用数学公式实现 第n个数是1+2+3+4…+n = (1+n)n/2;
进而结果是对求和的求和
对(1+n)n/2遍历1 to n;
进而sum = 1/2 * (12 + 23 +34+…+nn+1)
即 sum = 1/2 ( 1(1+1) + 2 (2+1)+…+n(n+1));
sum = 1/2 * (1+22 + 32 +…n2 + 1+2 +3…+n)
别人的代码2:
用递归代替循环来 求和
神仙的代码:
这与代码1思路没有差别,都是用formula
但是提供了一种新的n+1表示方式
即-~n == n+1
但是为什么呢。。。
kata2:
寻找一个字符串中大于m的字母的个数
我的代码:
不过这个代码是有问题的
但是当我更改这行后就可以了:
观察函数头可知,这是一个指针函数,即返回一个字符型的指针。
但是疑问我定义了字符数组不能算作字符指针吗。
别人的代码:
运用了aspintf 函数,可以根据传入的字符串自动分配内存,所以只需要char *r就行。
该函数在asprintf .h库中