//采用指针作为函数的形参,利用形实结合,通过&,将实参地址赋予指针形参,从而通过改变改变子程序中指针所指数值,来改变实参值。
#include <iostream>
using namespace std;
void mn(float a, int* intpart, float* fracpart) {
*intpart = static_cast<int>(a);
*fracpart = a - *intpart;
}
int main() {
for (int i = 1; i < 4; i++) {
float a, n;
int m;
cout << "please enter float a:" << endl;
cin >> a;
mn(a, &m, &n);
cout << "integer part= " << m << endl << "fraction part= " << n << endl;
}
return 0;
}
采用引用的方法:
#include <iostream>
using namespace std;
void mn(float a, int &intpart, float &fracpart) { //变化处1
intpart = static_cast<int>(a);
fracpart = a - intpart;
}
int main() {
for (int i = 1; i < 4; i++) {
float a, n;
int m;
cout << "please enter float a:" << endl;
cin >> a;
mn(a, m, n); //变化处2
cout << "integer part= " << m << endl << "fraction part= " << n << endl;
}
return 0;
}