news 2026/7/28 17:09:54

数据结构实验(C语言):顺序串

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据结构实验(C语言):顺序串

文章参考过网上的内容,如有侵权,请联系

#include<stdio.h>#include<stdlib.h>typedefstruct{chardata[100];//初始化串intlen;//串长}SqString;voidDispStr(SqString s){inti;if(s.len>0){for(i=0;i<s.len;i++)printf("%c",s.data[i]);printf("\n");}}voidStrAssign(SqString&str,charcstr[]){//生成一个其值等于串常亮cstr的串Tinti;for(i=0;cstr[i]!='\0';i++)str.data[i]=cstr[i];str.len=i;}SqStringSubString(SqString&Sub,SqString S,intpos,intlen1){//用Sub返回串S的第pos个字符起长度为len的子串if(pos<0||pos>S.len||len1<0||len1>S.len-pos+1){printf("ERROR");}inti=0,j=pos;while(len1--){Sub.data[i]=S.data[j];Sub.len=i+1;i++;j++;}returnSub;}intStrCompare(SqString S,SqString T){//若S>t,则返回值>0;若S=t,则返回值=0;若S<t,则返回值<0;for(inti=0;i<S.len;i++){if(S.data[i]!=T.data[i])return1;}return0;}intIndexStr(SqString S,SqString T){//t为非空串。若主串S中存在于T相等的子串//则返回第一个这样的子串的在S中的位置,否则返回0intn=S.len;intm=T.len,i=0;SqString Sub;while(i<=n-m+1){SubString(Sub,S,i,m);if(StrCompare(Sub,T)!=0)++i;elsereturni;}//if(i>0) return i; //返回子串在主串中的位置//else return 0; //S中不存在与T相等的子串}intmain(){SqString S,T,Sub1;printf("建立串S\n");StrAssign(S,"abcdefgh");printf("建立串T\n");StrAssign(T,"defg");printf("输出串S\n");DispStr(S);printf("输出串T\n");DispStr(T);printf("串S中子串T的位置\n");printf("%d",IndexStr(S,T)+1);return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/28 17:06:44

进程互斥和进程同步

一、进程互斥由于进程具有独立性和异步性等并发特征&#xff0c;计算机的资源有限&#xff0c;导致了进程之间的资源竞争和共享&#xff0c;也导致了对进程执行过程的制约。1、临界资源和临界区&#xff08;临界部分&#xff09;临界资源&#xff1a;一次只能供一个进程访问的资…

作者头像 李华
网站建设 2026/7/28 17:06:13

逃离塔科夫终极离线训练器:30+功能解锁游戏新维度

逃离塔科夫终极离线训练器&#xff1a;30功能解锁游戏新维度 【免费下载链接】EscapeFromTarkov-Trainer Escape from Tarkov (EFT) Trainer - Internal 项目地址: https://gitcode.com/gh_mirrors/es/EscapeFromTarkov-Trainer 你是否在《逃离塔科夫》的残酷世界中苦苦…

作者头像 李华
网站建设 2026/7/28 17:04:33

软件外包报价为什么差很多?先拆需求、工期和交付范围

软件外包报价差很多&#xff0c;并不一定是谁报高了或报低了。更常见的原因是&#xff0c;参与报价的人理解了不同的项目&#xff1a;有人只计算页面开发&#xff0c;有人把需求梳理、接口联调、测试和上线也算进去&#xff1b;有人按现成设计稿估时&#xff0c;有人默认还要补…

作者头像 李华
网站建设 2026/7/28 17:02:04

ES6常用语法

ES6常用语法let它的作用类似于var&#xff0c;用来声明变量&#xff0c;但是所声明的变量&#xff0c;只在let命令所在的代码块内有效。if(true){var a 1;let b 2; } console.log(a); console.log(b); // 报错&#xff1a;ReferenceError: b is not definedlet与var一样是用…

作者头像 李华
网站建设 2026/7/28 16:57:36

VMware Workstation 17 Pro安装Slackware 15.0完整指南

在虚拟化环境中体验不同的Linux发行版是很多开发者和系统管理员的学习与工作日常。VMware Workstation Pro作为一款功能强大的桌面虚拟化软件,为我们提供了便捷的测试和开发平台。而Slackware,作为现存历史最悠久的Linux发行版之一,以其简洁、稳定和遵循“KISS”(Keep It S…

作者头像 李华