
2.编写函数,实现在字符串str1中寻找字符ch最后出现的位置,如果没有找到ch,则返回-1。在main函数中输入
#include<stdio.h>voidmain(){intfine(chara[],charc);charb[50],d;intk;printf("Enterstr1...
#include<stdio.h>
void main()
{int fine(char a[],char c);
char b[50],d;
int k;
printf("Enter str1:");
gets(b);
printf("\n");
printf("Enter ch:");
scanf("%c",&d);
printf("\n");
k=fine(b,d);
printf("ch position :%d",k);
}
int fine(char a[],char c)
{ int i,m=-1;
for(i=0;a[i]!='\0';i++)
if(a[i]==c) m=i+1;
return (m);
} 展开
void main()
{int fine(char a[],char c);
char b[50],d;
int k;
printf("Enter str1:");
gets(b);
printf("\n");
printf("Enter ch:");
scanf("%c",&d);
printf("\n");
k=fine(b,d);
printf("ch position :%d",k);
}
int fine(char a[],char c)
{ int i,m=-1;
for(i=0;a[i]!='\0';i++)
if(a[i]==c) m=i+1;
return (m);
} 展开
4个回答
展开全部
****
public string insert(string s1,string s2,char ch)
{
string[] tempstr = s1.Split(ch.ToString()); ///将s1按照搜索到的字符进行分割,返回字符串数组,并丢失分割依据,即字符ch
string news1 = "";
for(int i=0;i<tempstr.Length;i++)///组合新字符串;在第一个串和第二个串分割的地方添加s2
{news1+=tempstr[1];
news1+=ch.ToString();
if(0==i) news1+=s2;
}
return news1;
}
c++**********************************
char* insert(char* s1,char*s2,char ch)
{
int i,j.k;
int lengths1,lengs2;///统计s1和s2的长度
for(i=0;s1[i]!='/0';i++)////定位分割点,/0表示字符串结束的标志.i表示分割位置
for(lengths1=0;s1[lengths1]!='/0';lengths1++)
;
for(lengths2=0;s2[lengths2]!='/0';lengths2++)
;
char* newstr = new char[lengths1+lengths2]
for(j=0;j<=i;j++)///安置s1前一部分
for(k=0;k<lengths2;k++)///安置s2
for(i=0;i<lengths1+lengths2;i++)///安置s1后一部分
return newstr;
}
理论上你需要加上判断,如果没能找到ch,那么如何如何。
public string insert(string s1,string s2,char ch)
{
string[] tempstr = s1.Split(ch.ToString()); ///将s1按照搜索到的字符进行分割,返回字符串数组,并丢失分割依据,即字符ch
string news1 = "";
for(int i=0;i<tempstr.Length;i++)///组合新字符串;在第一个串和第二个串分割的地方添加s2
{news1+=tempstr[1];
news1+=ch.ToString();
if(0==i) news1+=s2;
}
return news1;
}
c++**********************************
char* insert(char* s1,char*s2,char ch)
{
int i,j.k;
int lengths1,lengs2;///统计s1和s2的长度
for(i=0;s1[i]!='/0';i++)////定位分割点,/0表示字符串结束的标志.i表示分割位置
for(lengths1=0;s1[lengths1]!='/0';lengths1++)
;
for(lengths2=0;s2[lengths2]!='/0';lengths2++)
;
char* newstr = new char[lengths1+lengths2]
for(j=0;j<=i;j++)///安置s1前一部分
for(k=0;k<lengths2;k++)///安置s2
for(i=0;i<lengths1+lengths2;i++)///安置s1后一部分
return newstr;
}
理论上你需要加上判断,如果没能找到ch,那么如何如何。
2011-04-20
展开全部
****
public string insert(string s1,string s2,char ch)
{
string[] tempstr = s1.Split(ch.ToString()); ///将s1按照搜索到的字符进行分割,返回字符串数组,并丢失分割依据,即字符ch
string news1 = "";
for(int i=0;i<tempstr.Length;i++)///组合新字符串;在第一个串和第二个串分割的地方添加s2
{news1+=tempstr[1];
news1+=ch.ToString();
if(0==i) news1+=s2;
}
return news1;
}
c++**********************************
char* insert(char* s1,char*s2,char ch)
{
int i,j.k;
int lengths1,lengs2;///统计s1和s2的长度
for(i=0;s1[i]!='/0';i++)////定位分割点,/0表示字符串结束的标志.i表示分割位置
for(lengths1=0;s1[lengths1]!='/0';lengths1++)
;
for(lengths2=0;s2[lengths2]!='/0';lengths2++)
;
char* newstr = new char[lengths1+lengths2]
for(j=0;j<=i;j++)///安置s1前一部分
for(k=0;k<lengths2;k++)///安置s2
for(i=0;i<lengths1+lengths2;i++)///安置s1后一部分
return newstr;
}
理论上你需要加上判断,如果没能找到ch,那么如何如何。
另外,虚机团上产品团购,超级便宜
public string insert(string s1,string s2,char ch)
{
string[] tempstr = s1.Split(ch.ToString()); ///将s1按照搜索到的字符进行分割,返回字符串数组,并丢失分割依据,即字符ch
string news1 = "";
for(int i=0;i<tempstr.Length;i++)///组合新字符串;在第一个串和第二个串分割的地方添加s2
{news1+=tempstr[1];
news1+=ch.ToString();
if(0==i) news1+=s2;
}
return news1;
}
c++**********************************
char* insert(char* s1,char*s2,char ch)
{
int i,j.k;
int lengths1,lengs2;///统计s1和s2的长度
for(i=0;s1[i]!='/0';i++)////定位分割点,/0表示字符串结束的标志.i表示分割位置
for(lengths1=0;s1[lengths1]!='/0';lengths1++)
;
for(lengths2=0;s2[lengths2]!='/0';lengths2++)
;
char* newstr = new char[lengths1+lengths2]
for(j=0;j<=i;j++)///安置s1前一部分
for(k=0;k<lengths2;k++)///安置s2
for(i=0;i<lengths1+lengths2;i++)///安置s1后一部分
return newstr;
}
理论上你需要加上判断,如果没能找到ch,那么如何如何。
另外,虚机团上产品团购,超级便宜
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int fine(char a[],char c)
{ int i,m=-1;
for(i=0;a[i]!='\0';i++)
{
if(a[i]==c)
m=i+1;break;
}
return (m);
}
{ int i,m=-1;
for(i=0;a[i]!='\0';i++)
{
if(a[i]==c)
m=i+1;break;
}
return (m);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的程序正确。没有问题啊。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询