算法训练day02

121 阅读1分钟

反转字符串的实现

C++实现:

#include<iostream>
#include<stdio.h>
#include<string>
using namespace std;

//字符串反转
int main(){
	string a;
	getline(cin, a); //getline只接受字符串类型
	//cin >> a; //如果字符串中有空格.不再适用,需用getline
	cout << "输入:" << a << endl;

	printf("输出:");
	//length()只能计算字符串(string)变量的函数,字符数组不行
	for (int i = a.length();i >= 0;i--)
	{
		printf("%c",a[i]);
	}
	return 0;
}

C实现:

#include <stdio.h>
#include<string>
int main()
{
	char str[80] = { 0 };
	gets_s(str);
	printf("输入:%s\n", str);

	printf("输出:");
	//strlen只能计算字符数组的长度
	for (int i = strlen(str); i >= 0; i--) {
		printf("%c", str[i]);
	}
	printf("\n");
	return 0;
}

运行结果:

QQ图片20230721134955.png

重点问题:

1.选用什么函数接受字符串?以及它们的使用方法和注意事项

getline,gets.cin

2.使用什么方法获取字符串的长度

length():获取字符串变量(string)的长度

strlen():获取字符数组的长度