C/C++教程

关于反转的总结(C/C++)

本文主要是介绍关于反转的总结(C/C++),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.reverse()函数:

reverse()包括反转string类型与字符数组;

#include <algorithm>//头文件


第一种:reverse(a, a+n);//n为数组中的元素个数--字符数组
第二种:reverse(str.begin(), str.end());//str为string类型名字--字符串

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string a;
    cin>>a;
    reverse(a.begin(),a.end());//string类型
    cout<<a;
    return 0;
}
#include<iostream>
#include<algorithm>
#include<cstring>//#include<string.h>
using namespace std;
int main()
{
    char a[101];
    cin.getline(a,sizeof(a));
    int m=strlen(a);
    reverse(a,a+m);
    puts(a);
    return 0;
}

对于C++语言,如果使用C字符串的话,就采用cin.getline()函数,如果采用string型字符串的话,就采用全局函数getline(cin,n);

注意,这两个函数都不读入最后的换行符。

cin.getline(str, sizeof(str));

#include<bits/stdc++.h>万能头文件
using namespace std;
string a;
signed main()
{
	cin>>a;
	int len=a.size();读取长度
	for(int i=len-1;i>=0;i--)反转
	cout<<a[i];
	return 0;
}
#include<bits/stdc++.h>
using namespace std;
int n,k;//全局变量
int turn(int n);
int main()
{
cin>>n;
turn(n);
cout<<k<<endl;
return 0;
}

int turn(int n)
{
while(n)
{ 
    k=k*10 + n%10;
    n/=10;
}
return 0;
}
同上
#include<bits/stdc++.h>
using namespace std;
int n,dn;
int main(){
	cin>>n;
	while(n){                //判断是否反转结束
		dn=dn*10+n%10;   //取原数的最后一位补到结果后面
		n/=10;           //最后一位可以丢掉了
	}
	cout<<dn<<endl;
	return 0;
}

还有就是:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    cin>>a;
    while(a)
    {
        cout<<a%10;
        a=a/10;
    }
    return 0;
}
 

这篇关于关于反转的总结(C/C++)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!