没有合适的资源?快使用搜索试试~ 我知道了~
以下是使用C语言实现的算法源码,用于找到给定字符串中满足条件(只包含一个字母,其余都是数字)的最长连续子串的长度 c #in
需积分: 1 0 下载量 67 浏览量
2024-05-17
12:52:37
上传
评论
收藏 23KB DOCX 举报
温馨提示
试读
2页
以下是使用C语言实现的算法源码,用于找到给定字符串中满足条件(只包含一个字母,其余都是数字)的最长连续子串的长度。 c #include <stdio.h> #include <ctype.h> int findLongestSubstring(const char *s) { int maxLength = -1; int currentLength = 0; int hasLetter = 0; // 标记是否已包含字母 while (*s) { if (isdigit(*s)) { // 如果当前字符是数字且已经包含字母,则增加当前长度 if (hasLetter) { currentLength++; } } else if (isalpha(*s)) { // 如果当前字符是字母 if (!ha
资源推荐
资源详情
资源评论
以下是使用 C 语言实现的算法源码,用于找到给定字符串中满足条件(只包含一
个字母,其余都是数字)的最长连续子串的长度。
c 复制代码
#include <stdio.h>
#include <ctype.h>
int findLongestSubstring(const char *s) {
int maxLength = -1;
int currentLength = 0;
int hasLetter = 0; // 标记是否已包含字母
while (*s) {
if (isdigit(*s)) {
// 如果当前字符是数字且已经包含字母,则增加当前长度
if (hasLetter) {
currentLength++;
}
} else if (isalpha(*s)) {
// 如果当前字符是字母
if (!hasLetter) {
// 如果之前没有包含字母,则设置标记并重置当前长度为 1
hasLetter = 1;
currentLength = 1;
} else {
// 如果之前已经包含字母,则当前长度保持不变(因为题目要求只包含一个
字母)
}
// 更新最长长度
if (currentLength > maxLength) {
maxLength = currentLength;
}
} else {
// 如果当前字符既不是字母也不是数字,则重置
currentLength = 0;
hasLetter = 0;
}
s++; // 移动到下一个字符
}
// 如果最终没有包含字母的子串,则返回-1
资源评论
梅菊林
- 粉丝: 1w+
- 资源: 207
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功