【C语言】递归和非递归分别实现strlen


本文摘自PHP中文网,作者little bottle,侵删。

今天带大家一起学习一下用递归和非递归分别实现strlen,对啦,这篇文章用的是C语言,这个大家应该会很熟悉吧,快来看看吧。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

#include<stdlib.h>

int Strlen1(char* str) {//递归

    if (*str == '\0') {

        return 0;

    }

    else {

        return Strlen1(str + 1) + 1;

    }

}

//************

int Strlen2(char* str) {//非递归

    int n = 0;

    while (*str != '\0') {

        ++str;

        ++n;

    }

    return n;

}

void main() {

    char str[30] = { 0 };

    printf("请输入一串字符\n");

    scanf("%s", &str);

    printf("递归判断字符串长度是:%d\n", Strlen1(str));

    printf("非递归判断字符串长度是:%d\n", Strlen2(str));

    system("pause");

}

【推荐课程:C视频教程】

以上就是【C语言】递归和非递归分别实现strlen的详细内容!

相关阅读 >>

C语言源程序结构是怎样的?

xcode怎么编写C语言

C语言多行注释符号是什么

C语言中函数调用的方式有哪些?

C语言中char型数据在内存中的存储形式是什么?

C语言标识符有哪三类

C语言中的“且”用什么符号表示?

C语言自定义函数(图文详解)

15道C语言开发面试题(原题分享)

你知道C语言的标识符命名规则是什么吗(详解)

更多相关阅读请进入《C语言》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...