1、求a和b两个数之和。
#include <iostream>
using namespace std;
int main()
{
int a, b, sum; //定义变量a、b、sum
cout << "请输入第一个数字a: "; //打印需要显示的字符串
cin >> a; // >> 为提取运算符,与cin配合使用,输入变量a的值
cout << "请输入第二个数字b: "; //打印需要显示的字符串
cin >> b; // >> 为提取运算符,与cin配合使用,输入变量b的值
sum = a + b; //赋值语句,将a和b的和赋值给sum
cout << "两个数字之和为:";
cout << "a + b = " << sum << endl; //打印需要显示的字符串
return 0; //函数结束
}
当写成cin>>a>>b;时,输入第一个数后,可按enter键换行或输入空格符 ,继续输入第二个数字。
结果如下:
2、求x和y两个数中的大者。
先定义函数,再编写main函数。
#include <iostream>
using namespace std;
int max(int x, int y) //定义max函数,函数值为整型,形式参数x,y为整型。
{
int z; //声明变量,定义本函数中用到的变量z为整型。
if (x > y) //if语句
z = x; //如果x>y,则将x值赋给z
else //if ...else...语句
z = y; //否则,将y值赋给z
return z; //max函数返回z的值
}
/*
如果函数的返回类型是`void`,那么函数不需要返回值。
如果函数的返回类型是非`void`类型(如`int`, `double`, 自定义类型等),'main'函数例外,那么函数必须在所有控制路径上返回一个值
*/
int main()
{
int a , b , c;
cin >> a >> b;
c = max(a, b); //调用max函数,将函数的返回值赋值给c
cout << "max = " << c;
return 0;
}
结果如下:
在上面的程序中,max函数出现在main函数之前,因此在main函数中调用max函数时,编译系统能识别max是已定义的函数名。如果把两个函数的位置对换一下,这是在编译main函数遇到max时,编译系统无法知道max代表什么含义,因而无法编译,按出错处理。
为了解决这个问题,在主函数中需要对被调用函数做出声明。 对上面的程序进行改写,并在函数中增加打印信息,在main函数中直接调用max函数。
#include <iostream>
using namespace std;
int main()
{
int max(int x, int y);//声明函数
max(12, 21); //直接调用max函数
cout << "************* 分割线 *************" << endl;
int a = 2, b = 3, c;
c = max(a, b);
cout << "max2 = " << c;
return 0;
}
int max(int x, int y)
{
int z;
if (x > y) z = x;
else z = y;
cout << "max1=:" << z << '\n'; //函数中增加打印信息
return z;
}
结果如下:
3、包含类的C++程序。
#include <iostream>
using namespace std;
class Student //声明一个类,类名为Student
{
private: //私有部分声明
int num; //私有变量
int score; //私有变量
public: //共有部分声明
void setdata() //定义公用函数setdata
{
cin >> num;
cin >> score;
}
void display() //定义公用函数display
{
cout << "num = " << num << endl;
cout << "score = " << score << endl;
};
};
Student stud1, stud2; //定义类的变量stud1和stud2,称为对象
int main()
{
stud1.setdata(); //调用对象stud1的setdata函数
stud2.setdata(); //调用对象stud2的setdata函数
stud1.display(); //调用对象stud1的dispaly函数
stud2.display(); //调用对象stud2的display函数
return 0;
}
结果如下:
上述是一个包含类的最简单的C++程序。在程序声明的类Student中,包含两种成员:数据(变量num,score)和函数(setdata函数和display函数),分别称为数据成员和成员函数。在C++中把一组数据和有权调用这些数据的函数封装在一起,组成一种称为“类”的数据结构。也就是说,一个类是由一批数据以及对其操作的函数组成的。
类可以体现数据的封装性和信息隐蔽。凡是被指定为公用的数据或函数,既可以被本类中的成员函数调用,也可以被类外的语句所调用。被指定为私有的成员只能被本类中的成员函数所调用,而不能被类外的语句调用。
公共函数由分为静态公共函数和非静态公共函数。非静态公共函数调用时,需要先创建一个类的对象,然后使用成员运算符.调用;或使用指针调用。静态公共函数调用时,直接通过类名和作用域解析运算符 ::
调用。