strtok的基本使用方法
理论知识自己能够百度这里直接上代码
代码的内容是 HDU(杭电)-1106-排序
排序
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 41756 Accepted Submission(s): 11972
Problem Description
输入一行数字,假设我们把这行数字中的‘5’都看成空格,那么就得到一行用空格切割的若干非负整数(可能有些整数以‘0’开头,这些头部的‘0’应该被忽略掉,除非这个整数就是由若干个‘0’组成的,这时这个整数就是0)。
你的任务是:对这些切割得到的整数,依从小到大的顺序排序输出。
Input
输入包括多组測试用例,每组输入数据仅仅有一行数字(数字之间没有空格),这行数字的长度不大于1000。
输入数据保证:切割得到的非负整数不会大于100000000;输入数据不可能全由‘5’组成。
Output
对于每一个測试用例,输出切割得到的整数排序的结果。相邻的两个整数之间用一个空格分开,每组输出占一行。
Sample Input
0051231232050775
Sample Output
0 77 12312320
strtok 是重要的基础内容在处理文本数据的时候难免会遇到截取文本片的段操作,这个非常方便
#include<stdio.h>
#include<string.h>
#include<algorithm>// sort 排序头文件 属于c++内容
using namespace std;// 使用c++必写的
int change(char *p)
{
int i,x=0;
for(i=0;p[i];i++)
{
x=x*10+p[i]-'0';
}
return x;
} //此处是把字符转换成数字
int main()
{
int i;
char str[1000];
char *p;
int a[100];
while(~scanf("%s",str))
{
p=strtok(str,"5"); // 记录strtok的起始点
for(i=0;p/* 遇到断点就记录一次 */;i++,p=strtok(NULL,"5")/*更新断点位置*/)
{
a[i]=change(p);//把断点地址传给change进行转换处理
}
sort(a,a+i); // sort排序不会的能够參考本博 排序算法 内的 sort排序
for(int j=0;j<i-1;j++)
printf("%d ",a[j]);
printf("%d\n",a[i-1]);
}
return 0;
}
strtok的基本使用方法的更多相关文章
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- strtok在keil中使用小笔记及字符串转换为多个浮点数的方法
在pc上面使用这个字符串函数,是没有问题的,但是我在keil中结合rtos来处理字符串的时候,比如char *s = "1.01313;17.2609;17.4875";那么就只能 ...
- Tomcat(JVM)性能监控方法
Tomcat(JVM)监控方法 1.Tomcat自带的监控页面 配置详见Tomcat安装配置监控一文,如图所示为监控页面: 2.LoadRunner编写脚本实现Tomcat监控 采用编写VuGen脚本 ...
- 字符串分割函数 STRTOK & STRTOK_R (转)
1.一个应用实例 网络上一个比较经典的例子是将字符串切分,存入结构体中.如,现有结构体 typedef struct person{ char name[25]; char sex[1 ...
- strtok和strtok_r
1.strtok()函数的用法 函数原型:char *strtok(char *s, const char *delim); Function:分解字符串为一组字符串.s为要分解的字符串,delim为 ...
- 【技术宅3】截取文件和url扩展名的N种方法
//截取文件扩展名的N种方法 //第1种 //strrchr() 函数查找字符在指定字符串中最后一次出现的位置,如果成功,则返回其后面的字符串 //返回带有点的扩展名 function get_e ...
- MFC多线程内存泄漏问题&解决方法
在用visual studio进行界面编程时(如MFC),前台UI我们能够通过MFC的消息循环机制实现.而对于后台的数据处理.我们可能会用到多线程来处理. 那么对于大多数人(尤其是我这样的菜鸟),一个 ...
- 关于函数strtok和strtok_r的使用要点和实现原理(二)
http://www.cnblogs.com/stemon/p/4013264.html已经介绍了使用strtok函数的一些注意事项,本篇将介绍strtok的一个应用并引出strtok_r函数. 1. ...
- strtok、strtok_s、strtok_r 字符串分割函数
1.strtok函数 函数原型:char * strtok (char *str, const char * delimiters); 参数:str,待分割的字符串(c-string):delimit ...
随机推荐
- 权限管理系统(五):RBAC新解,基于资源的权限管理
本文讨论以角色概念进行的权限管理策略及主要以基于角色的机制进行权限管理是远远不够的.同时我将讨论一种我认为更好的权限管理方式. 1.什么是角色 当说到程序的权限管理时,人们往往想到角色这一概念.角色是 ...
- 【Unity】9.1 导入粒子系统组件
分类:Unity.C#.VS2015 创建日期:2016-05-02 一.简介 Unity 5.x已经自带了粒子系统组件,新建工程后只需要直接导入它就可以使用了. 二.导入Unity自带的粒子系统组件 ...
- 我的Eclipse设置
1.默认编码改成:UTF-8(在老项目里设置此项可能导致java源码文件注释显示乱码!可以手工输入GBK三个字母,然后点apply) 2.文件默认打开方式 3.背景颜色(#C0C0C0,RGB(192 ...
- IBM研究院找到度量安全性方法:容器与虚拟机,谁更安全?
https://zhuanlan.zhihu.com/p/40446759 虚拟机比容器更安全吗?你可能会有自己的答案,但IBM研究院发现容器的安全性与虚拟机一样,甚至更加安全. 一般来说,从接口宽度 ...
- .NET MVC5+ Dapper+扩展+AutoFac自动注入实现
1.首先创建一个MVC项目 定义Model 层 view 层 index.cshtml 控制器层Controllers等文件 2.在线安装或者引用dapper 以及扩展相关包 同时Autofac ...
- c++并行计算库TBB和PPL的基本用法
并行库充分利用多核的优势,通过并行运算提高程序效率,本文主要介绍c++中两个知名的并行库,一个是intel开发的TBB,一个是微软开发的PPL.本文只介绍其基本的常用用法:并行算法和任务. TBB(I ...
- matlab问题集总
每次更新一点,慢慢增加 nargin nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能.通常可以用他来设定一些默认值,如下面的函数. 例子,函数test1的功能是输出a ...
- HA&Federation【转】
转自:http://blog.csdn.net/tutucute0000/article/details/39756123 从nameNode1.namenode2克隆出namenode3.namen ...
- Flume中的HDFS Sink配置参数说明【转】
转:http://lxw1234.com/archives/2015/10/527.htm 关键字:flume.hdfs.sink.配置参数 Flume中的HDFS Sink应该是非常常用的,其中的配 ...
- 转css中文英文换行、禁止换行、显示省略号
css中文英文换行.禁止换行.显示省略号 原创 2016年08月09日 14:20:01 word-break:break-all;只对英文起作用,以字母作为换行依据 word-wrap:brea ...