首页 > 其他分享 >c语言代码(递归)练习21

c语言代码(递归)练习21

时间:2023-10-06 09:56:18浏览次数:43  
标签:arr return 21 递归 int my 练习 len strlen

需求:在不使用临时变量的情况下,利用函数求取字符串的长度

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

int my_strlen(char* n )
{
    int  i = 0;
    while(*n != '\0')
    {
        i++;
        n++;
    }
    return i;
}

//递归函数:大事化小
//my_strlen("ayue");
//1+my_strlen("yue");
//.......
//1+1+1+0
int my_strlen2(char* n)
{
    if (*n != '\0')
    {
        return 1+my_strlen(n+1);
    }
    return 0;
}
int main()
{
    char arr[] = "ayue";
    //int len = strlen(arr);
    //printf("%d", len);
    int len = my_strlen2(arr);
    printf("你输入的字符串长度是:%d", len);
    return 0;
}

 

标签:arr,return,21,递归,int,my,练习,len,strlen
From: https://www.cnblogs.com/ayue6/p/17744256.html

相关文章

  • 洛谷 P7830 [CCO2021] Through Another Maze Darkly
    洛谷传送门被联考创出shit了。考虑一种极限情况:每个点指向父亲。那么这种情况我们会顺着欧拉序完整地把整棵树都走一遍。但是初始的时候不一定每个点都指向父亲。发现我们走过\(O(n^2)\)步就能到达上面的极限情况。比较显然,因为每次扩展至少使一个点从不指向父亲变成指向父......
  • 南昌航空大学21207230题目集1-3第一次总结性blog
    (1)前言:第一次作业比较简单,也是老师发给我们练练手,主要还是熟悉一下java的输入输出格式,题目很多都在以前学习c语言的时候有写过,从第二,三次作业开始就正式开始学习java了,由于从来没有接触过java,刚开始写的时候感觉很陌生,但是在系统的学习一部分以后越发熟练和熟悉了,第二次写pta......
  • 笨办法学Python3 习题21 函数可以返回某些东西
    知识点:函数放在=右边也可以马上被执行调用函数可以和函数结果的变量一起运算关键词 return 的用法脚本函数运行内容:定义函数1(参数1,参数2),打印加法句子,返回加法结果定义函数2(参数1,参数2),打印减法句子,返回减法结果定义函数3(参数1,参数2),打印乘法句子,返回减法结果定义函......
  • .CrawlSpider读书网练习
    1.创建项目:scrapystartprojectdushuproject2.跳转到spiders路径cd\dushuproject\dushuproject\spiders3.创建爬虫类:scrapygenspiderreadwww.dushu.comimportscrapyfromreadPro.itemsimportReadproItemclassReadnetSpider(scrapy.Spider):name='......
  • c语言代码练习20
    需求:每调用一次函数,num增加一次。#define_CRT_SECURE_NO_WARNINGS1#include<stdio.h>voidayue(int*p){(*p)++;}intmain(){intnum=0;ayue(&num);printf("num=%d\n",num);ayue(&num);printf("num=%d&......
  • c语言代码练习19
    需求:利用二分查找,查找数组中是否有用户输入的数字。#define_CRT_SECURE_NO_WARNINGS1#include<stdio.h>//这里的arr[]实际上是一个指针intayue(intarr[],inta,intp){intleft=0;intright=p-1;while(left<=right){inti=(ri......
  • scrapy post请求练习
    importscrapyimportjsonclassTransferpostSpider(scrapy.Spider):name='transferPost'allowed_domains=['fanyi.baidu.com']#start_urls=['http://fanyi.baidu.com/']#post请求不能用默认生成的,因为不能携带请求参数#de......
  • 读书网入库练习
    settings.pyDB_HOST='localhost'DB_PORT=3306DB_USER='root'DB_PWD='1234'DB_NAME='guli'DB_CHARSET='utf8'#Configureitempipelines#Seehttps://docs.scrapy.org/en/latest/topics/item-pipeli......
  • 21 HCIA-综合实验
    拓扑规划说明如图1实现一个典型的企业网,其中总部(包含R1、SW1、SW2和SW3)为企业主园区网络,分支为企业分支网络,云部分代表互联网设备(8.8.8.8)。读者需要完成总部和分支基本的网络功能,可以访问互联网(8.8.8.8)以及通过GREVPN使得位于两个AS的终端实现跨越广域网的通信整......
  • 函数练习错题
    A函数的返回值不能一次返回两个数例如inttest(){}return3,4;           intmain(){          最后的结果不是3,4而是4,因为这是个逗号表达式,整个表达式会从}intret=test();     左到右依次计算,但是最后的结果只会返回最......