知识点(总结)

来源:互联网 发布:重庆seo外包服务价格 编辑:程序博客网 时间:2024/06/07 00:13

1.unique();//这是一个去重函数,去掉相同的元素

     sort(a,a+n,cmp);//必须先排序     n=unique(a,a+n)-a;//n为数组a的个数

2.reverse();//前后翻转。

reverse(a,a+n);//a为数组(或字符),n为长度

3.strcpy()与strncpy()的用法

博客链接:传送门

#include<stdio.h>#include<string.h>int main(){    char a[100]="hsdfkjfhs";    char b[100]="1232weioruiweruioo";    printf("%s\n",strncpy(a,b+2,sizeof(a)));//会把b中包括2号之后的赋给a,输出32weioruiweruioo    return 0;}

4.strstr(a,b);
它的作用找出b字符串在a字符串中第一次出现的位置(不包括b的串结束符)。返回该位置的指针,如找不到,返回空指针。
在做到这道题时用到了,题目链接:传送门

strstr(a,b)返回b在a中第一次出现的位置,返回指向这个位置的指针;否则返回NULL(即假);

5.set之insert的用法。
insert可以把相同的统计为一个,不会重复计数

#include<set>//3个头文件#include<iostream>using namespace std;set<string>ss;//定义set,你里面可以是任何类型,int ,doubless.insert(str);//将要统计的字符串放入ss中。

给个完整的代码试试

#include<stdio.h>#include<set>#include<iostream>using namespace std;char str[1000];int main(){    int n;    while(~scanf("%d",&n))    {        set<string>ss;        for(int i=0; i<n; i++)        {            scanf("%s",str);            ss.insert(str);        }        printf("%d\n",ss.size());//输出有多少种不同的字符串;    }    return 0;}
原创粉丝点击