PTA题库 查找字串

2023-05-16

查找子串

本题要求实现一个字符串查找的简单函数。

函数接口定义:

char *search( char *s, char *t );

函数search在字符串s中查找子串t,返回子串ts中的首地址。若未找到,则返回NULL

裁判测试程序样例:

#include <stdio.h>
#define MAXS 30

char *search(char *s, char *t);
void ReadString( char s[] ); /* 裁判提供,细节不表 */

int main()
{
    char s[MAXS], t[MAXS], *pos;

    ReadString(s);
    ReadString(t);
    pos = search(s, t);
    if ( pos != NULL )
        printf("%d\n", pos - s);
    else
        printf("-1\n");

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例1:

The C Programming Language
ram

输出样例1:

10

输入样例2:

The C Programming Language
bored

输出样例2:

1
char *search( char *s, char *t ){
    int i,j,k;
    char *p = NULL;
    for ( i=0; s[i]; i++)
        for( j=i,k=0; s[j]==t[k]; k++,j++)
            if( t[k+1]=='\0'){
                p = &s[i];
                return p;
            }
    return p;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PTA题库 查找字串 的相关文章

  • 【PTA】判断一个数是否为回文数

    1 题目 如果一个数与它的反转数相等 则该数为回文数 输入一个数 判断是否为回文数 输入格式 输入一个数 输出格式 若XX是回文数 则输出 XX 是回文数 若不是 则输出 XX 不是回文数 输入样例1 6234326 输出样例1 62343
  • 根据后序或者前序 + 中序建树的多种方法!

    根据 后序or前序 中序 建树的多种方法 以下例子都是实战题 值得收藏 值的学习 1 堆的方式 完全二叉树 利用了完全二叉树的特性 根结点i的孩子结点左孩子为2i 右孩子为2i 1 注意此时i是从1开始编号 但是每棵子树的根结点没有直接给出
  • Basic Level 1061 判断题 (15分)

    题目 判断题的评判很简单 本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分 输入格式 输入在第一行给出两个不超过 100 的正整数 N 和 M 分别是学生人数和判断题数量 第二行给出 M 个不超过 5 的正整数 是每道题的满分
  • Basic Level 1012 数字分类 (20分)

    题目 给定一系列正整数 请按要求对数字进行分类 并输出以下 5 个数字 A 1 A 1 A1 能被 5 整除的数字中所有偶数的和 A 2
  • L1-096 谁管谁叫爹 - java

    L1 096 谁管谁叫爹 时间限制 200 ms 内存限制 64 MB 题目描述 咱俩谁管谁叫爹 是网上一首搞笑饶舌歌曲 来源于东北酒桌上的助兴游戏 现在我们把这个游戏的难度拔高一点 多耗一些智商 不妨设游戏中的两个人为 A 和 B 游戏开
  • PAT (Basic Level) Practice 1018 锤子剪刀布

    大家应该都会玩 锤子剪刀布 的游戏 两人同时给出手势 胜负规则如图所示 现给出两人的交锋记录 请统计双方的胜 平 负次数 并且给出双方分别出什么手势的胜算最大 输入格式 输入第 1 行给出正整数 N 10 5 即双方交锋的次数 随后 N 行
  • PTA 7-2 一元多项式的乘法与加法运算 (C语言实现)

    题目网址 https pintia cn problem sets 15 problems 710 题目描述 设计函数分别求两个一元多项式的乘积与和 输入格式 输入分2行 每行分别先给出多项式非零项的个数 再以指数递降方式输入一个多项式非零
  • 【PTA】数组排序

    对n个整数进行降序排列 然后输出 import java util public class Main public static void main String args Scanner scanner new Scanner Syst
  • L1-018 大笨钟(java)

    1 题目详情 微博上有个自称 大笨钟V 的家伙 每天敲钟催促码农们爱惜身体早点睡觉 不过由于笨钟自己作息也不是很规律 所以敲钟并不定时 一般敲钟的点数是根据敲钟时间而定的 如果正好在某个整点敲 那么 当 数就等于那个整点数 如果过了整点 就
  • Basic Level 1090 危险品装箱 (25分)

    题目 集装箱运输货物时 我们必须特别小心 不能把不相容的货物装在一只箱子里 比如氧化剂绝对不能跟易燃液体同箱 否则很容易造成爆炸 本题给定一张不相容物品的清单 需要你检查每一张集装箱货品清单 判断它们是否能装在同一只箱子里 输入格式 输入第
  • Advanced Level 1001 A+B Format (20 point(s))

    PAT甲级系列 PAT Advanced Level 文章目录 英文 Title Input Specification Output Specification Sample Input Sample Output 中文 题目 输入格式
  • 7-44 求整数的位数及各位数字之和

    对于给定的正整数N 求它的位数及其各位数字之和 输入格式 输入在一行中给出一个不超过109的正整数N 输出格式 在一行中输出N的位数及其各位数字之和 中间用一个空格隔开 输入样例 321 输出样例 3 6 include
  • Basic Level 1013 数素数 (20分)

    题目 令 P i表示第 i 个素数 现任给两个正整数 M N 10 4 请输出 P M到 P N的所有素数 输入格式 输入在一行中给出 M 和 N 其间以空格分隔 输出格式 输出从 P M到 PN的所有素数 每 10 个数字占 1 行 其间
  • Basic Level 1024 科学计数法 (20分)

    题目 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法 其满足正则表达式 1 9 0 9 E 0 9 即数字的整数部分只有 1 位 小数部分至少有 1 位 该数字及其指数部分的正负号即使对正数也必定明确给出 现以科学计数法的格式给
  • PTA 1075 链表元素分类 (c++)

    1075 链表元素分类 25 分 思路 首先建立一个结构体包含数据和下个地址 还有大小为3得vector数组 然后建立一个结构体数组 下标即为当前结点得地址 这样其实就可以用结构体数组来模拟链表进行一系列操作 然后定义一个变量并赋给它首地址
  • PTA 7-4 统计学生平均成绩与及格人数 (15 分)

    本题要求编写程序 计算学生们的平均成绩 并统计及格 成绩不低于60分 的人数 题目保证输入与输出均在整型范围内 输入格式 输入在第一行中给出非负整数N 即学生人数 第二行给出N个非负整数 即这N位学生的成绩 其间以空格分隔 输出格式 按照以
  • Basic Level 1016 部分A+B (15分)

    题目 正整数 A A A的 D A D A DA 为1位整数 部分 定义为由 A
  • Basic Level 1034 有理数四则运算 (20分)

    题目 本题要求编写程序 计算 2 个有理数的和 差 积 商 输入格式 输入在一行中按照 a1 b1 a2 b2 的格式给出两个分数形式的有理数 其中分子和分母全是整型范围内的整数 负号只可能出现在分子前 分母不为 0 输出格式 分别在 4
  • 福到了(15 分)

    L1 6 福到了 15 分 福 字倒着贴 寓意 福到 不论到底算不算民俗 本题且请你编写程序 把各种汉字倒过来输出 这里要处理的每个汉字是由一个 N N 的网格组成的 网格中的元素或者为字符 或者为空格 而倒过来的汉字所用的字符由裁判指定
  • Basic Level 1018 锤子剪刀布 (20分)

    题目 大家应该都会玩 锤子剪刀布 的游戏 两人同时给出手势 胜负规则如图所示 现给出两人的交锋记录 请统计双方的胜 平 负次数 并且给出双方分别出什么手势的胜算最大 输入格式 输入第 1 行给出正整数 N 1 0 5

随机推荐