输入一个字符,再输入一个以回车结束的字符串(少于80 个字符),在字符串中查找该字符。如果找到, 10
则输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出“NotFound”。我的代码哪里错了?求大神教教!在线等~~~#include<stdio...
则输出该字符在字符串中所对应的最大下标(下标从0 开始);否则输出“NotFound”。我的代码哪里错了?求大神教教!在线等~~~
#include<stdio.h>
int main(void)
{
int i=0,k=0,flag=0;
char str[80],m;
printf("Input a character:");
scanf("%c",&m);
printf("Input a string:");
while((str[i]=getchar())!='\n')
i++;
str[i]='\0';
for(i=0;str[i]!='\0';i++){
if(str[i]==m) k=i;
flag=1;}
if(flag==1) printf("index=%d",k);
else printf("NotFound");
return 0;
} 展开
#include<stdio.h>
int main(void)
{
int i=0,k=0,flag=0;
char str[80],m;
printf("Input a character:");
scanf("%c",&m);
printf("Input a string:");
while((str[i]=getchar())!='\n')
i++;
str[i]='\0';
for(i=0;str[i]!='\0';i++){
if(str[i]==m) k=i;
flag=1;}
if(flag==1) printf("index=%d",k);
else printf("NotFound");
return 0;
} 展开
7个回答
展开全部
代码:
#include<stdio.h>
int main()
{
char a[80],b;
int i;
int k;
printf("Input chars:");
for(i=0;(a<i>=getchar())!='\n';i++);
a<i>;='\0';
scanf("%c",&b);
for(i=0;a<i>!='\0';i++)
if(a<i>;==b)k=i;
printf("%d",k);
if(k==-1)printf("Not Found!");
return 0;
}
扩展资料:
字符串逆序。输入一个以回车符结束的字符串(少于80个字符),将该字符串逆序存放,输出逆序后的字符串。
#include<stdio.h>
int main()
{
char a[80];
int i,item;
for(i=0;(a<i>=getchar())!='\n';i++);
item=i;
a<i>='\0';
for(i=item;i>=0;i--)
printf("%c",a[i-1]);
printf("\n");
return 0;
}
展开全部
#include<stdio.h>
int main(void)
{
int i=0,k=0,flag=0;
char str[80],m;
printf("Input a character:");
scanf("%c",&m);
printf("Input a string:");
getchar();// 为消除回车键对后续读取函数的影响
while((str[i]=getchar())!='\n')
i++;
str[i]='\0';
for(i=0;str[i]!='\0';i++){
if(str[i]==m) k=i;
flag=1;}
if(flag==1) printf("index=%d\n",k);
else printf("NotFound\n");
return 0;
}
int main(void)
{
int i=0,k=0,flag=0;
char str[80],m;
printf("Input a character:");
scanf("%c",&m);
printf("Input a string:");
getchar();// 为消除回车键对后续读取函数的影响
while((str[i]=getchar())!='\n')
i++;
str[i]='\0';
for(i=0;str[i]!='\0';i++){
if(str[i]==m) k=i;
flag=1;}
if(flag==1) printf("index=%d\n",k);
else printf("NotFound\n");
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,flag=1应包含在if里面,其实你直接从字符串的后面开始判断不是更好吗?因为你要求的是最大值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,k,flag;
char s[80];
char x;
i=0;
while((s[i]=getchar())!='\n')
i++;
s[i] ='\n';
flag = 0;
scanf("%c",&x);
for(i=0;s[i]!='\n';i++)
{
if(x==s[i])
k=i;
flag=1;
}
if(flag==1)
{
printf("index=%d\n",k);
}
else
printf("NotFound\n");
return 0;
}
#include<string.h>
int main()
{
int i,j,k,flag;
char s[80];
char x;
i=0;
while((s[i]=getchar())!='\n')
i++;
s[i] ='\n';
flag = 0;
scanf("%c",&x);
for(i=0;s[i]!='\n';i++)
{
if(x==s[i])
k=i;
flag=1;
}
if(flag==1)
{
printf("index=%d\n",k);
}
else
printf("NotFound\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码: #include int main() { char a[80],b; int i; int k; printf("Input chars:"); for(i=0;(a=getchar
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询