字符串比对(10分)

C语言入门-MOOC-作业-字符串比对 字符串比对 题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大... 阅读详情

字符串比对(10分)

题目内容:

题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。

 

注意,第一个字符的位置是0。

 

注意,第一个字符串在第二个字符串中的位置可能不止一处。

 

注意,字符串中可能含有空格。

 

注意,两个字符串的长度一定大于0。

 

输入格式:

两个字符串,一行一个。

 

输出格式:

第一个字符串在第二个字符串中出现的位置,按照从小到到的顺序排列,每个数字后面有一个空格。

如果在第二个字符串中找不到第一个字符串,则输出-1。

 

输入样例:

abba

ababbba abbabbabbabbaacc

 

输出样例:

8 11 14 17

时间限制:500ms内存限制:32000kb

#include<stdio.h>
#include<string.h>

int main(int argc, char const *argv[])
{
    char c;
    int i = 0;
    char str[1000] = {'\0'};
    char dest[100] = {'\0'};
    char *q = 0;
    char *p = 0;
    int b = 1;

    while((c = getchar())!='\n'){
        dest[i] = c;
        i++;
    }
    i=0;
    
    while((c = getchar())!='\n'){
        str[i] = c;
        i++;
    }

    p = str;
    while((q = strstr(p,dest))!=NULL){ //strstr函数返回大字符串中的地址
        char a=*q; //剪切后的字符串
        *q = '\0';  //切断str
        printf("%d ",strlen(str));
        *q = a;
        p = q+1;
        b=0;
    }
    if(b) printf("-1");
    return 0;
}

参考资料:https://www.cnblogs.com/bcd589/p/6158857.html

c语言进阶第一章测试——字符串比对 字符串比对(10分) 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符... 阅读详情

相关推荐

1 字符串比对(10分)

题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 输入格式: 两个字符串,一行一个。 输出格式: 第一个字符...

来来往往 411

字符串对比判断

题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 ...

tjy199610_10的博客 570

openEuler 22.03 安装及配置Gitlab容器

在 openEuler 22.03 上安装及配置Gitlab容器

轻步玉阶 3316

字符串比对-C语言实现

题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 输入格式: 两个字符串,一行一个。 输出格式: 第一个字符串在第二个字符串中出现的位置,按照从小到

夏夕的博客 1964

保姆级教程:用PyTorch从零实现SDE扩散模型(附完整代码与MNIST实战)

本文提供了一份详细的PyTorch教程,指导读者从零开始实现SDE扩散模型,并附有完整的代码示例和MNIST数据集实战。通过解释随机微分方程(SDE)的核心概念、模型架构设计、训练流程实现以及采样生成过程,帮助开发者掌握扩散模型的构建与应用。

weixin_28677005的博客 268

【已解决】Claude应用地区限制问题:通过Slack注册与魔法节点切换实战指南

本文详细介绍了如何通过Slack注册和切换魔法节点解决Claude应用地区限制问题。从Slack账号注册、创建工作区技巧,到突破地区限制的关键步骤和成功后的配置使用,提供了全面的实战指南。特别强调了节点选择和网络环境对解决'App unavailable'错误的重要性,帮助用户顺利使用Claude AI助手。

weixin_29209801的博客 1771

PTA题集——进阶——字符串比对(10分)

题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 输入...

小菜鸡的博客 1871

在MATLAB产生正态(Gauss)分布随机数

在 MATLAB 中内置了有产生标准正态(Gauss)分布的随机数函数,使用方法如下: 其中 为产生矩阵的行数和列数, 为产生矩阵的个数,产生的矩阵中的每个元素均为服从 N(0,1)N(0, 1)N(0,1) 的标准正态分布的元素。使用如下命令产生一个 的服从的随机数矩阵: 绘制图像效果如下: 可以看到这里随机数服从 的标准正态分布。假设 X∼N(0,1)X\sim N(0,1)X∼N(0,1),则 3X+33X+33X+3 服从 N(3,9)N(3,9)N(3,9) 分布,因此我们要产生服从 N(

程序必须为人类阅读而编写,并且仅仅碰巧可以让机器执行 3万+

1字符串比对(10分)

题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 输入格式: 两个字符串,一行一个。 输出格式: 第一个字符串在第二个字符串

sayinginging的博客 184

Ubuntu24.04/20.04设置网络共享文件夹

Ubuntu20.04利用向日葵远程控制时,不能传输文件。使用linux版本QQ来传输是可以的,不过linuxqq功能真的很弱。因此,打算在Ubuntu系统中建立一个共享文件夹,可在局域网中访问。 1、新建共享文件夹 获取root权限,或者登陆root账户。可在/home文件夹(或其它文件夹)下新建一个文件夹,如share。 右击文件夹,选择“本地网络共享”菜单。按下图设置。 点击确定。如果系统已经安装了samba服务器,就可以进入第3步。如果没有,会提示安装,按提示安装,可能会出错,可进.

willhu2008的专栏 2万+

基于深度学习的ECG心电信号异常分类:从数据集到Transformer实战

心电图(Electrocardiogram, ECG)是诊断心血管疾病最常用、最无创的工具。随着可穿戴设备的普及,海量的心电数据需要自动、快速且准确地分析。人工智能,尤其是深度学习,在心电信号分类任务中表现出了超越传统规则算法的能力。本文将深入探讨ECG异常分类的技术细节,从心电数据的生理基础,到数据预处理,再到使用1D-CNN、LSTM、以及前沿的Transformer模型进行实战演练。文章末尾提供了完整的代码以及多个国际公开数据集的获取方式。

YOLO 191

C语言进阶-第一周:字符串比对(10分)

题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0...

吉大秦少游 2232

杰理JL701N V142的SDK实现双备份自定义OTA教程和代码分享

摘要 本文档详细介绍了基于JL701N SDK的UART OTA升级功能开发方案。该方案采用双备份(Dual Bank)机制,通过串口实现安全可靠的固件远程更新。核心特性包括:1) 双备份升级机制确保升级失败可回滚;2) CRC-16/XMODEM校验保障数据完整性;3) 灵活的传输控制,支持自定义波特率和数据包大小。文档提供了完整的系统架构、API接口说明、通信协议规范以及移植指南,适用于生产烧录、现场升级等多种场景。配套Python升级工具简化了升级流程,使开发人员能够快速实现固件更新功能。

qq_42014563的博客 278

把输入的字符按照反着顺序输出_C语言程序设计进阶-第1周编程题-字符串比对(10分)...

题目内容:题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。注意,第一个字符的位置是0。注意,第一个字符串在第二个字符串中的位置可能不止一处。注意,字符串中可能含有空格。注意,两个字符串的长度一定大于0。输入格式:两个字...

weixin_39787826的博客 166

T527 uart串口配置导致系统进不去

T527 s_uart串口配置导致系统进不去。

Linux驱动开发工程师,熟悉Linux/Android底层驱动、TP、显示、IIC、网络等通用外设调试适配,Linux上层应用开发。常用平台瑞芯微、全志、恩智浦等。 677

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

字符串比对C程序

你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 输入格式: 两个字符串...

On the Road 1305

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

字符串比对

字符串比对(10分)题目内容:题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。注意,第一个字符的位置是0。注意,第一个字符串在第二个字符串中的位置可能不止一处。注意,字符串中可能含有空格。注意,两个字符串的长度一定大于...

前景 673

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

翁恺c语言程序设计进阶第1周编程题字符串比对

第1周编程题 依照学术诚信条款,我保证此作业是本人独立完成的。 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分。 2.学生可以在作业截止时间之前不限次数提交答案,系统将取其中的最高分作为最终成绩。 1字符串比对(10分) 题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串...

qwazsedxc的博客 510

C语言程序设计进阶 第1周编程练习 1 字符串比对

1 字符串比对(10分) 题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定大于0。 输入格式: 两个字符串,一行一个。 ...

EASY_Artoria的博客 284

1字符串比对

  题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。 注意,第一个字符的位置是0。 注意,第一个字符串在第二个字符串中的位置可能不止一处。 注意,字符串中可能含有空格。 注意,两个字符串的长度一定...

qq_41771878的博客 205

浙江大学 C语言程序设计进阶 第1周编程题 字符串比对

看了一个星期的数据结构课… 才发现如果你觉着一件事很无聊,你就应该找一件更无聊的事来做一做,这样你就会发现当初那件事好像没那么无聊 比如我发现还是高数有意思… 概论讲了很久的Big-O Notation的时间复杂度估计,以及迭代递归动态规划,有些枯燥但还能接受,上到向量才发现要用Cpp的Template和Class,完全没学,无从下手 Anyway,说明还是要先把语言关打好。加上又要考试了,不妨练...

A land whole of flowers. 467

java比对两个字符串不同的地方

比对两个字符串不同的地方 在Java中,我们经常需要比对两个字符串的差异,以便进行数据分析、文本处理等操作。本文将介绍如何在Java中比对两个字符串不同的地方,并给出代码示例。 方法一:使用equals方法逐字符比对 我们可以使用Java中的String类的equals方法逐字符比对两个字符串的不同之处。具体代码如下: 登...

weixin_40331495的博客 715

c#高效比对大量图片

比较图片的方法   以前传统的比较方式是遍历图片中的每一个像素,然后进行比对。这样的比对在少量图片的比对上虽然效率低一点,但是也没有什么不好。但是在大量图片比对的时候,过长的反应时间和对服务器比较高的消耗肯定是不行的。   所以微软给我们提供了另外一种比对的方法,能够正确,高效的比对出两张图片的是否相同。这种方法的原理是:将图片保存到数据流中然后使用Convert.ToBase64Str...

u013934107的博客 2908

C语言-单向链表实现字符串的比对

题目内容:题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的。你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到,则输出-1。注意,第一个字符的位置是0。注意,第一个字符串在第二个字符串中的位置可能不止一处。注意,字符串中可能含有空格。注意,两个字符串的长度一定大于0。输入格式:两个字...

Bridge3的博客 2154
上一篇: 06-图1 列出连通集
下一篇: 逆序输出
DedicateToAI
博客等级 码龄9年 6粉丝 90原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值