首页 > 其他分享 >c语言代码练习41

c语言代码练习41

时间:2023-10-29 13:13:00浏览次数:35  
标签:p2 p1 s2 代码 练习 ret 41 char include

问:实现在另一个数组中查找子字符串

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>
#include <string.h>

int main()
{
    char* p1 = "abcdefgdef";
    char* p2 = "def";
    char* ret =strstr(p1, p2);
    if (ret == NULL)
    {
        printf("子串不存在\n");
    }
    else
    {
        printf("%s\n", ret);
    }
    return 0;
}

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>
#include <string.h>

char* my_strstr(char* p1, char* p2)
{
    assert(p1);
    assert(p2);
    char* s1 = NULL;
    char* s2 = NULL;
    char* cur =(char*)p1;
    if (!*p2)
        return (char*)p1;
    while (*cur)
    {
        s1 = cur;
        s2 = (char*)p2;
        while (*s1 && *s2 &&(*s1 == *s2))
        {
            s1++;
            s2++;
        }
        if (!*s2)
            return cur;
        cur++;
    }
    return NULL;
}

int main()
{
    char* p1 = "abcdefaa";
    char* p2 = "def";
    char* ret = my_strstr(p1, p2);
    if (ret == NULL)
        printf("子串不存在!\n");
    else
        printf("%s\n", ret);
    return 0;
}

 

标签:p2,p1,s2,代码,练习,ret,41,char,include
From: https://www.cnblogs.com/ayue6/p/17795772.html

相关文章

  • 收藏从未停止,练习从未开始——MYSQL游标存储过程IDEA快捷键配置SpringBoot入门到入土G
    “收藏从未停止,练习从未开始”,或许有那么一些好题好方法,在被你选中收藏后却遗忘在收藏夹里积起了灰?今天请务必打开你沉甸甸的收藏重新回顾,分享一下那些曾让你拍案叫绝的好东西吧!本人详解:(提醒:随笔)本人详解作者:王文峰,参加过2020年度博客之星,《Java王大师王天师》作者采购供应链共享......
  • Java 静态代码块、代码块、构造方法和多态继承的代码执行顺序
    测试代码importlombok.Getter;publicclassExecutionOrder{{System.out.println("ExecutionOrdercode0");}static{System.out.println("ExecutionOrderstaticcode");}{System.out.println(&......
  • while语句练习(打印1-10)(加入continue)
    #include<stdio.h>intmain(){  inti=1;  //i从1开始  while(i<=10)//i小于等于10  {    i++;  //由于i++,所以从i=2开始,到11结束    if(i==5)    continue;//continue-继续,达到5时该代码从while重新循环    pri......
  • 无代码平台的表单平台 JAVA开源项目 毕业设计
    https://gf.bilibili.com/item/detail/1104045029为了帮助小白入门Java,博主录制了本项目配套的《项目手把手启动教程》,希望能给同学们带来帮助。一、摘要基于Vue+SpringBoot+MySQL的无代码平台的表单平台,包括了系统数据中心模块,用来存放管理系统通用的模块,另外分别设计了动态类型......
  • 2023-2024-1 20231416 《计算机基础与程序设计》第五周总结
    作业信息作业属于哪个课程https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP作业要求在哪里https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP/homework/13009作业的目标自学《计算机科学概论》第6章和《C语言程序设计》第4章作业正文 https://www......
  • 安信可小安派AiPi 代码下载
    安信可小安派AiPi代码下载笔记记录AiPi代码下载(直接使用命令行操作,仅需要Type-C接口线即可)在完成环境搭建,和代码编写前提下,使用Type-C接口线下载代码,当然可以自己使用usb-ttl串口线下载程序,但是感觉麻烦,没有直接一根线舒服。以大佬的基于小安派AiPi-Eye-S1的小霸王工程代码为......
  • JavaScript代码,鼠标放上去显示一张图片
     <!DOCTYPEhtml> <html>  <head>    <metacharset="utf-8">    <title>FirstC</title>     </head>  <body>    <h1 >helloworld</h1>    <inputtype=&q......
  • 代码随想录第四天 | 24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题
    question1:SwapNodesinPairshttps://leetcode.cn/problems/swap-nodes-in-pairs/IwasalittleconfusedatfirstbecauseI'mthinkingwhethershouldIcreatanewhead,butsoonIcameupwiththeideaofcreatpre=Noneandwithan'if-els......
  • 学习笔记7+代码
    一、苏格拉底挑战二、遇见的问题三、实践和代码代码:#include<stdio.h>#include<pthread.h>//线程函数,接受一个void*参数,返回一个void*指针void*thread_function(void*arg){intthread_arg=*((int*)arg);printf("Threadreceivedargument......
  • LeedCode刷题(2)-Java随机数练习
    2.随机数练习(1)随机生成数题目:请编写如下所示程序随机生成并显示一位数的正整数(1~9的值)随机生成并显示一位数的负整数(-9~-1的值)随机生成并显示两位数的正整数(10~99的值)①Random类总结random是Java提供的一个类库,它的实例会生成一连串的伪随机数Random创建实例有......