PAT 乙级 常用函数

1.字符串,字符数组,数字之间的转换

1.str.c_str() string转换为字符数组,可以用printf输出。

2.stoi(str) 将string转换为数字串,直到遇到第一个非法字符为止。需要首字符是数字或者空格,否则返回错误。

int n; string str; cin>>str; n = stoi(str); cout<<n;

3.to_string() 将数字串转换为string。需要包含头文件string。

to_string():数字—> 字符串 int n; cin>>n; string str; str = to_string(n); cout<<str;

2.输入方式

1.cin.getline(strname,length) 用于输入字符数组 char str[100]。遇到换行符自动切换为空字符,不在保存在输入队列,因此不用getchar吸收
2.getline(cin,strname) string头文件下,用于输入整行string。首行前要吸收换行符

3.字符串判断:大小写,数字

这里是引用

4.字符串函数

赋值:
strcpy(c,s.c_str());

5.最大最小值

max_element():列表里最大值
max_element(a,a+10)-a:最大值下标
*max_element(a,a+10):最大值


max();:两者最大值

int a[10]={
    
    1,4,5,4,9,5,6,8,2};
	int position1=max_element(a,a+10)-a;
	cout<<"position:"<<position1<<endl;
	int n1=*max_element(a,a+3);
	cout<<"max[0,3):"<<n1<<endl; 
	
string s="123456aAbB";//按照ascill码 
	int position2=max_element(s.begin(),s.end())-s.begin();
	cout<<"position:"<<position2<<endl;
	char s1 = *max_element(s.begin(),s.end());
	char s2 = *min_element(s.begin(),s.end());
	cout<<"max:"<<s1<<endl; 
	cout<<"min:"<<s2<<endl;
	
cout<<max(1,2);

6.math

pow(n, r):求n的r次方
sqrt(x):算术平方根
floor(n):向下取整
ceil(n):向上取整
fabs(x):浮点数取正
abs(x):整数取正

7.reverse(s.begin(),s.end())

反转数组,容器:
reverse(s.begin(),s.end())反转,s.end()是最后一位的下一位

int a[10]={
    
    21,4,4,5,2,2};
	reverse(a,a+6);
	for(int i = 0; i < 6; i++){
    
    
		cout<<a[i];
	}
	

8.swap(x,y):交换这两个数

#include<bits/stdc++.h>
using namespace std;

int main(){
    
    
	char a[]={
    
    'a','b','c'};
	
	do {
    
    
		cout<<a[0]<<a[1]<<a[2]<<endl;
	}while(next_permutation(a,a+3)); 
	
	return 0;
}

abc
acb
bac
bca
cab
cba

9.substr(1,4)

10.Max=max(Max,sum[j]);

11.set s;

for (int i = 1; i <= n; i++)
    s.insert(i / 2 + i / 3 + i / 5);

猜你喜欢

转载自blog.csdn.net/weixin_44926962/article/details/110440436
今日推荐