切记scanf再输入字符的时候遇到空格是认为结束的,若有空格请用gets输入

//但是你输入的是整数的时候,它不会吧空格识别为结束符



/*  给某个单词定位,并输出他的位置--------------*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
 int N,i=0,n=0;
// char *str;

// char *substr;

char str[90];
char substr[3];

/*char *substr="Tom";             //我发现直接复制再去产找就行

 char *str="Jam Jack Tom Tommy";*/

// str=(char*)malloc(127*sizeof(char));
// scanf("%s",str);   //我输完这个,根本就无法输入子串,因为我输入了空格它认为已经结束了,所以总是查找不出来
gets(str);                        //最后换乘这个来输入了
 
// substr=(char*)malloc(127*sizeof(char));
 scanf("%s",substr);


 char *p=substr;
 char *q=str;
 while(*q!='\0'&&*p!='\0')
 {
  if(*p==*q)
  {
   p++;
   q++;
  }
  else
  {
   p=substr;
   q++;
  }
  if(*q==' '||*q=='\0')
   n++;  
   
 }
 if(*p=='\0')
  printf("I've found it at %d!\n",n);

  else
  printf("Sorry\n");
 
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值