例4-1
在主函数中调用其他函数
源程序:
#include <iostream>
using namespace std;
void printstar(void)//定义printstar()函数
{
cout << "******************************" << endl; //输出30个*
}
void print_message(void) //定义print_message()函数
{
cout << "Welcome to C++!" << endl;//输出一行文字
}
int main(void)
{
printstar();
print_message();
printstar();
return 0;
}
结果
例4 - 2
编写一个函数完成两个实型数的相加。
源程序:
float add(float x, float y)//函数定义
{
float s;
s = x + y;
return s;//不需要键入;结束
}
这就是一个函数定义加一个函数体的全部
例4-3
调用函数时的数据传递。
源程序:
#include <iostream>
using namespace std;
int add(int x, int y)
{
int s;
s = x + y;
return s;
}
int main()
{
int a, b, c;
cout << "please enter two integer numbers:";
cin >> a >> b;
c = add(a, b);//调用 add()函数,给定实参为 a、b,函数值赋给C
cout << "sum=" << c << endl;
return 0;
}
#include <iostream>
using namespace std;
int add(int x, int y)
{
int s;
s = x + y;
return s;
}
int main()
{
int a, b, c;
cout << "please enter two integer numbers:";
cin >> a >> b;
c = add(a, b);//调用 add()函数,给定实参为 a、b,函数值赋给C
cout << "sum=" << c << endl;
return 0;
}
变形:
、
一. 证明:形参变,实参不变
#include <iostream>
using namespace std;
int add(int x, int y)
{
int s;
s = x + y;
return s;
}
int main()
{
int a, b, c;
cout << "please enter two integer numbers:";
cin >> a >> b;
c = add(a, b);
cout << "sum=" << c << endl;
c = add(a+10, b+10);
cout << "a=" << a << endl;
cout << "b=" << b << endl;
cout << "sum新=" << c << endl;
}
#include <iostream>
using namespace std;
int add(int x, int y)
{
int s;
s = x + y;
return s;
}
int main()
{
int a, b, c;
cout << "please enter two integer numbers:";
cin >> a >> b;
c = add(a, b);
cout << "sum=" << c << endl;
c = add(a + 10, b + 10);
cout << "a=" << a << endl;
cout << "b=" << b << endl;
cout << "sum新=" << c << endl;
}
证毕。
二. 证明:实参变,形参变
#include <iostream>
using namespace std;
int A(int x)
{
return x;
//这里return的相当于还是形参x的具体数值
}
int main()
{
int a, c;
cout << "please enter integer numbers:";
cin >> a ;
c = A(a);//即:c==此时形参x的具体数值
cout << "c=" <<c << endl;
cin >> a;//只做改变实参的操作
c = A(a);
//观察最后结果输出的形参的值是否发生变化
cout << "c=" << c << endl;
}
#include <iostream>
using namespace std;
int A(int x)
{
return x;
//这里return的相当于还是形参x的具体数值
}
int main()
{
int a, c;
cout << "please enter integer numbers:";
cin >> a;
c = A(a);//即:c==此时形参x的具体数值
cout << "c=" << c << endl;
cin >> a;//只做改变实参的操作
c = A(a);
//观察最后结果输出的形参的值是否发生变化
cout << "c=" << c << endl;
}
结果:
证毕。
例4-4
对被调用的函数进行声明。
源程序:
#include <iostream>
using namespace std;
int main()
{
float add(float, float); //对add()函数进行声明
float a, b, c;
cout << "please enter a,b:";
cin >> a >> b;
c = add(a, b);
cout << "sum=" << c << endl;
return 0;
}
float add(float x, float y)//定义 add()函数
{
float z;
z = x + y;
return(z);
//这里的z没有规定必须要用()括起来,这里写成:
//return z;
//结果也一样
}
#include <iostream>
using namespace std;
int main()
{
float add(float, float); //对add()函数进行声明
float a, b, c;
cout << "please enter a,b:";
cin >> a >> b;
c = add(a, b);
cout << "sum=" << c << endl;
return 0;
}
float add(float x, float y)//定义 add()函数
{
float z;
z = x + y;
return(z);
//这里的z没有规定必须要用()括起来,这里写成:
//return z;
//结果也一样
}