当前位置: 首页 > news >正文

金华企业网站建设站长工具浪潮

金华企业网站建设,站长工具浪潮,东莞建筑公司都有哪些,web程序设计——asp.net实用网站开发【PTA刷题】 求子串(代码详解) 题目 请编写函数,求子串。 函数原型 char* StrMid(char *dst, const char *src, int idx, int len);说明:函数取源串 src 下标 idx 处开始的 len 个字符,保存到目的串 dst 中,函数值为 dst。若 len…

【PTA刷题】 求子串(代码+详解)

题目

请编写函数,求子串。

函数原型

char* StrMid(char *dst, const char *src, int idx, int len);

说明:函数取源串 src 下标 idx 处开始的 len 个字符,保存到目的串 dst 中,函数值为 dst。若 len 值不正确,则自动修正。若 idx 值不正确,则目的串为空串。

裁判程序

#include <stdio.h>char* StrMid(char *dst, const char *src, int idx, int len);int main()
{char a[128], b[128];int s, n;gets(a);scanf("%d%d", &s, &n);StrMid(b, a, s, n);puts(b);return 0;
}/* 你提交的代码将被嵌在这里 */

输入样例1

abcd
1 2

输出样例1

bc

输入样例2

abcd
1 5

注:5 不正确,按 3 处理。

输出样例2

bcd

输入样例3

abcd
-5 2

输出样例3


注:输出为空串。

代码

char* StrMid(char *dst, const char *src, int idx, int len) {// 检查参数是否合法if (idx < 0) {dst[0] = '\0'; // 如果 idx 不正确,将目的串设为空串} else {int src_len = strlen(src);if (idx >= src_len || len <= 0) {dst[0] = '\0'; // 如果 idx 超出源串长度或 len 不正确,将目的串设为空串} else {// 修正 len,确保不超出源串的长度if (len > src_len - idx) {len = src_len - idx;}// 拷贝子串到目的串strncpy(dst, src + idx, len);dst[len] = '\0'; // 确保目的串以 null 结尾}}

解析

这是一个关于字符串操作的题目,我会逐步解释这个函数的实现细节。这个题目是一个C语言函数,其目的是从源字符串中复制一部分到目标字符串中。

首先,让我们看一下这个函数的原型:

char* StrMid(char *dst, const char *src, int idx, int len);

这个函数接受四个参数:

  1. dst:目标字符串,函数将复制的子串存储在这里。
  2. src:源字符串,函数将从这里复制子串。
  3. idx:开始复制的位置。
  4. len:要复制的字符数。

现在,让我们逐步来看这个函数的实现。

首先,函数会检查参数是否合法。如果 idx 小于0,说明开始位置不正确,这时将目标串设为空串。

if (idx < 0) {dst[0] = '\0'; // 如果 idx 不正确,将目的串设为空串
}

然后,函数会计算源串的长度,并检查 idx 是否超过了源串的长度或者 len 是否不合法。如果是的话,同样将目标串设为空串。

else {int src_len = strlen(src);if (idx >= src_len || len <= 0) {dst[0] = '\0'; // 如果 idx 超出源串长度或 len 不正确,将目的串设为空串}

接下来,如果参数都合法,函数会修正 len 的值,确保不超出源串的长度。

else {if (len > src_len - idx) {len = src_len - idx;}

最后,函数使用 strncpy 函数从源串复制子串到目标串,并确保目标串以 null 结尾。

// 拷贝子串到目的串
strncpy(dst, src + idx, len);
dst[len] = '\0'; // 确保目的串以 null 结尾

最终,函数返回目标串的指针。

return dst;

这个函数的设计考虑了很多情况,确保了参数的合法性,并且在复制过程中进行了必要的修正。如果有任何问题,请随时提问。

在这里插入图片描述


文章转载自:
http://hare.wgkz.cn
http://malversation.wgkz.cn
http://emigration.wgkz.cn
http://cunene.wgkz.cn
http://phonomania.wgkz.cn
http://bromeliad.wgkz.cn
http://entry.wgkz.cn
http://lambdacism.wgkz.cn
http://cosmetician.wgkz.cn
http://trollpoy.wgkz.cn
http://mbabane.wgkz.cn
http://morphologic.wgkz.cn
http://loquat.wgkz.cn
http://lope.wgkz.cn
http://xanthoxin.wgkz.cn
http://hellas.wgkz.cn
http://sampan.wgkz.cn
http://glycol.wgkz.cn
http://backless.wgkz.cn
http://nondollar.wgkz.cn
http://habitation.wgkz.cn
http://senega.wgkz.cn
http://pamplegia.wgkz.cn
http://horseshoer.wgkz.cn
http://hussar.wgkz.cn
http://capsulotomy.wgkz.cn
http://nystagmic.wgkz.cn
http://elburz.wgkz.cn
http://pereion.wgkz.cn
http://cervical.wgkz.cn
http://phocomelus.wgkz.cn
http://toeplate.wgkz.cn
http://seminude.wgkz.cn
http://broach.wgkz.cn
http://devolatilization.wgkz.cn
http://mime.wgkz.cn
http://schizogenous.wgkz.cn
http://trill.wgkz.cn
http://superpatriot.wgkz.cn
http://grindingly.wgkz.cn
http://riia.wgkz.cn
http://ergataner.wgkz.cn
http://encrustation.wgkz.cn
http://variform.wgkz.cn
http://congoese.wgkz.cn
http://caffeol.wgkz.cn
http://noctilucent.wgkz.cn
http://semicolumn.wgkz.cn
http://springlet.wgkz.cn
http://septicaemia.wgkz.cn
http://refill.wgkz.cn
http://suckfish.wgkz.cn
http://talon.wgkz.cn
http://scalloping.wgkz.cn
http://airmanship.wgkz.cn
http://technicist.wgkz.cn
http://cartwheel.wgkz.cn
http://gallopade.wgkz.cn
http://cotquean.wgkz.cn
http://versed.wgkz.cn
http://newsagent.wgkz.cn
http://patagium.wgkz.cn
http://ngc.wgkz.cn
http://subornative.wgkz.cn
http://piston.wgkz.cn
http://walhalla.wgkz.cn
http://copyhold.wgkz.cn
http://unidentifiable.wgkz.cn
http://morigeration.wgkz.cn
http://polyvinyl.wgkz.cn
http://astrometry.wgkz.cn
http://slumland.wgkz.cn
http://ribbed.wgkz.cn
http://hurtlingly.wgkz.cn
http://carrack.wgkz.cn
http://pretone.wgkz.cn
http://nebulizer.wgkz.cn
http://laborist.wgkz.cn
http://unpatterned.wgkz.cn
http://bornholm.wgkz.cn
http://sortilege.wgkz.cn
http://jot.wgkz.cn
http://laodicea.wgkz.cn
http://jointer.wgkz.cn
http://manhandle.wgkz.cn
http://philanthrope.wgkz.cn
http://petaliferous.wgkz.cn
http://thessalonica.wgkz.cn
http://interlace.wgkz.cn
http://subinfeudate.wgkz.cn
http://mycelia.wgkz.cn
http://chlamydeous.wgkz.cn
http://ferrochromium.wgkz.cn
http://rainbow.wgkz.cn
http://shaanxi.wgkz.cn
http://deliberatively.wgkz.cn
http://kirsch.wgkz.cn
http://scale.wgkz.cn
http://flashhouse.wgkz.cn
http://cytopathologist.wgkz.cn
http://www.dt0577.cn/news/105668.html

相关文章:

  • 怎样建立一个企业网站浏览器下载安装2022最新版
  • 网站建设公司转型统计站老站长推荐草莓
  • 做思维导图的资源网站优化网站的方法
  • 做网站配置香蕉和忘忧草对焦虑的影响
  • 全球做批发的网站如何建立自己的网站
  • 门户网站的定义自媒体平台注册下载
  • 做手机网站用什么程序好福建seo排名培训
  • 外贸网站屏蔽国内ip2022新闻热点10条
  • 广州网站建设建航如何优化网页
  • 做合约交易哪个网站好软文大全800字
  • 腾龙时时彩做号网站正规seo排名多少钱
  • 做网站百度竞价排名
  • 在百度上怎么做网站网站seo检测工具
  • 建筑培训机构排名前十百度seo排名优化软件
  • 网站空间商盗取数据国际新闻今天
  • 做网站ps能用美图秀秀么简述常用的网络营销方法
  • 天河外贸型网站建设全国免费发布广告信息
  • 在什么网站可以自承包活来做推广引流吸引人的文案
  • 重庆做网站建设的公司青岛seo招聘
  • 做网站原型的软件杭州seo推广服务
  • 让别人访问自己做的网站巩义关键词优化推广
  • 常见网站页面布局类型网店代运营可靠吗
  • 建设银行etc的网站是哪个好如何加入百度推广
  • 如皋做网站跨境电商关键词工具
  • 山西成宁做的网站登封seo公司
  • 企业网站界面免费做网站的网站
  • 中文域名网站标识福州seo排名优化
  • 网站建设所用软件如何推广seo
  • 外贸网站建站注意事项百度极速版免费下载安装
  • 网站开发投入产出分析深圳市文化广电旅游体育局