| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1134 人关注过本帖
标题:字符串题目,不知道怎么办?
只看楼主 加入收藏
sxd147635549
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-8-17
收藏
得分:0 

看了楼上很多同志光说不练,也没个正确答案,我就临时写了个,希望能帮到你!

#include<stdio.h>
#include<string.h>
void main()
{
char a[100],b[100];
int m,n,i,j,p=0,k;


printf("请输入一个字符串:");
gets(a);
printf("\n请再输入一个字符串:");
gets(b);
m=strlen(a);
n=strlen(b);
if(m<n)
printf("\n 第一个字符串不包含第二个字符串");
else
{

for(j=0;j<=m-n;j++)
{
k=0;
if(a[j]==b[0])
{
for(i=0;i<n;i++)
{
if(b[i]==a[j+i])
k++;
}
if(k==n)
{
break;
}
}
}
if(k==n)
printf("\n 第一个字符串包含第二个字符串且出现位置为%d个字符开始",++j);
else
printf(" 第一个字符串不包含第二个字符串");
printf("\n\n");

}
}

2007-08-17 20:02
nwpu063417
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:428
专家分:28
注 册:2007-5-11
收藏
得分:0 
#include <stdio.h>
#include <string.h>
void main()
{
char s1[50]; //那个较长的字符串
char s2[30];
int len1, len2, i, j;
gets(s1);
gets(s2);
len1 = strlen(s1);
len2 = strlen(s2);
for(i = 0; i <= len1-len2; i++) //只需i从0到len1-len2即可
{
if(s1[i] == s2[0]) //这段代码是在判断s2是不是在s1中
for(j = 1; j < len2; j++)
{
if(s1[i+j] != s2[j])
break;
}
if(j == len2)
{
printf("%d\n",i+1);
break;
}
}
if(i > len1-len2)
printf("The second string is not contained in string 1\n");
}

2007-08-17 21:47
快速回复:字符串题目,不知道怎么办?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018406 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved