C++编程练习题2——数组与指针

  1. 打印杨辉三角形(8行)。
    杨辉三角形:
    1
    1 1
    1 2 1
    1 3 3 1
    提示:使用二维数组并利用每个系数等于其肩上两系数之和;
    使用制表符’\t’保证打印对齐。

  2. 编写函数int Converts (char s[ ]),将字符串s转化为整型数返回。
    提示:注意负数处理方法。用指针处理字符串非常方便。使用符号位来处理负数。

  3. 分别编写下列字符串处理函数:
    1)char *strcat1(char *s,const char *ct);
    将串ct接到串s的后面,形成一个长串。【例6.7】以数组为参数,现用指针为参数。
    2)int strlen1(const char * s);
    求字符串长度的函数,返回串长(不包括串结束符)。
    3)char * reverse (char *);
    反置字符串s,即可将“break”成为“kaerb”。
    4)char * strchr( const char *cs,char c);
    查找字符c在串cs中第一次出现的位置,返回指向该字符的指针,若没有出现则返回NULL。
    5) char *strstr (const char *cs1,const char *cs2);
    返回串cs2作为子串在cs1中第一次出现的位置,若没有出现则返回NULL。

  4. 使用递归和非递归的两种方法编写函数
    char *itoa (int n,char *string);
    将整数n转换为十进制表示的字符串。(在非递归方法中,可使用reverse()函数。)
    提示:递归方法分析。难度大,可用图解法:
    每次调用除以10,以去除最后一位,以n=3657为例。

    C++编程练习题2——数组与指针_第1张图片

    由此图可见,由string指向应填入的字符数组的相应位置。
    参考程序下载
    密码:p2xo

你可能感兴趣的:(C++编程练习题2——数组与指针)