算法竞赛入门经典—C++入门

版权声明:转自可爱的安安的博客!qq:1085589289 https://blog.csdn.net/ac1085589289/article/details/83998498

c++版框架

#include<iostream>//提供输入输出流 
#include<algorithm>//提供常用算法 
using namespace std;
const int maxn=100+10;
int A[maxn];
int main()
{
	long long a,b;
	while(cin>>a>>b)
	{
		cout<<min(a,b)<<"\n";
	}
	return 0;
}

细节提示

  1. 声明数组时,数组大小可以用const声明的常数。在C++中,这样的写法更加推荐。

引用

#include<iostream>
//#include<algorithm>
using namespace std;

void swap2(int& a,int& b)
{
	int t=a;
	a=b;
	b=t;
}

int main()
{
	int a=3,b=4;
	swap2(a,b);
	cout<<a<<" "<<b<<"\n";
	return 0;
}

编程提示

  1. 如果在参数名之前加一个“&”符号,就表示这个参数按照传引用的方式传递,而不是C语言里传值方式传递。
  2. 函数叫swap2的原因:algorithm头文件已经提供过了swap。

字符串

C++提供了一个新的string类型,用来替代C语言中的字符数组。

题目

输入数据的每行若干个(至少一个)以空格隔开的整数,输出每行中所有整数之和,如果只能使用字符与字符数组,一般有两种方案:一是使用getchar()边读边算,二是每次读取一行,然后再扫描该行的字符,同时计算结果。

#include<iostream>
#include<string>
#include<sstream>
using namespace std;

int main()
{
	string line;
	while(getline(cin,line))
	{
		int sum=0,x;
		stringstream ss(line);
		while(ss>>x) sum+=x;
		cout<<sum<<"\n";
	}
	return 0;
} 

编程提示

  1. string类在string头文件中,而stringstream在sstream头文件中。
  2. 虽然方便但是很慢。

再谈结构体

  1. 在工程中,一般用sruct定义“纯数据类型”,只包含较少的辅助成员函数,而用class定义“拥有复杂行为”的类型。

猜你喜欢

转载自blog.csdn.net/ac1085589289/article/details/83998498
今日推荐