A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 愿我能 中级黑马   /  2014-4-16 15:17  /  1509 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

想把一个由空格和字母构成的字符串利用空格分割并赋值到一个新的数组中,其实是为了单独比较各个单词的长度,这里知道要用strtok方法,可是自己总是用不好,谁能提供下一个好的方法,将由字母和空格字符串分割,
主要是这一步

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

4 个回复

倒序浏览
NSString的这个对象方法- (NSArray *)componentsSeparatedByString:(NSString *)separator;可以分割字符串内容
  1. NSString *content = @"abc def";
  2. NSArray *array = [content componentsSeparatedByString:@" "];//用空格分割字符串
复制代码

评分

参与人数 1黑马币 +2 收起 理由
jing迪 + 2

查看全部评分

回复 使用道具 举报
  1. #include <stdio.h>
  2. #include <string.h>

  3. int total_days(int y,int m,int d);
  4. int main()
  5. {
  6. int i,len = 0,maxlen = 0;
  7.         char *p,*pt,s[1024],subs[100];
  8.         printf("请输入字符串: ");
  9.         gets(s);
  10.         for(pt = s;*pt != '\0';pt++)          //遍历字符串;
  11.         {
  12.                 if((*pt != ' ') &&(*pt != '\0'))   //找出空格位;
  13.                         len++;
  14.                 else if(len>maxlen)
  15.                 {
  16.                         maxlen=len;
  17.                         p = pt - len;
  18.                         len=0;
  19.                 }       
  20.         }
  21.                 for(i = 0;i < maxlen;i++)
  22.                 subs[i] = *(p + i);
  23.         subs[maxlen] = '\0';
  24.         printf("长英文词:%s,\n",subs);
  25.         return 0;
  26. }

复制代码

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

回复 使用道具 举报
#include<stdio.h>
#include<string>
void main(){
        char s[100];
        char *str;

        char *slong;
        int n=0;

        gets(s);
       
        str=strtok(s," ");
        while(str!=NULL){
                if(strlen(str)>n){
                        n=strlen(str);
                        slong=str;
                }
                str=strtok(NULL," ");
        }
        printf("最长的单词是%s",slong);

}

评分

参与人数 1黑马币 +2 收起 理由
jing迪 + 2

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马