第7章 函数——C++的编程模块
7.8 编程练习题
- 第1题
#include <iostream>
using namespace std;
// 编写一个程序,不断要求用户输入两个数,直到其中的一个为0.
// 对于两个数程序使用一个函数来计算它们的调和平均数,并将结果返回给main()
// 调和平均数 = 2.0 * x* y*(x+y)
inline double calAve(double x, double y){ //计算调和平均数
return 2.0 * x * y *(x+y);
}
void test(){
cout << "请输入x, y的值:" << endl;
double x , y ;
cin >> x >> y;
while(x != 0.0 && y != 0 ){
cout << "调和平均数为" << calAve(x,y) << endl;
cout << "请输入x, y的值:" << endl;
cin >> x >> y;
}
}
int main(int argc, char const *argv[])
{
test();
return 0;
}
- 第2题
#include <iostream>
using namespace std;
const int SIZE = 10;
// 编写一个程序,要求用户输入10个高尔夫成绩,并将其存入到数组里面,程序允许提早结束输入,
// 并在一行上显示所有的成绩,然后报告平均成绩。请使用3个数组处理函数来分别输入、显示和计算
// 平均成绩
int set_mark(int [] , int);
void display_mark(int [], int);
double average_mark(int[] , int);
int main(int argc, char const *argv[])
{
int grade[SIZE] ;
// 输入分数
cout << "输入10个分数"<< endl;
int count = set_mark(grade,SIZE);
cout << "显示10个分数,输入非数字停止输入" << endl;
display_mark(grade,count);
cout << "计算平均分" << endl;
double res = average_mark(grade, count);
cout << "平均分为:" << res << endl;
system("pause");
return EXIT_SUCCESS;
}
int set_mark(int grade[] , int size){
int i = 0;
do{
cout << "输入第"<< i +1 <<"Golf Marks"<<endl;
cin >> grade[i++];
cin.get();
cout << "按Enter继续,或者按s键终止输入" << endl;
if(cin.get() == 's'){
for(;i<size;i++) grade[i] =0 ;
}
}while(i < size);
return i;
}
void display_mark(int grade[] , int size){
cout << "输入的字符个数" << size << endl;
for(int i =0 ; i< size;i++){
cout << grade[i] << "\t" ;
}
putchar('\n');
}
double average_mark(int grade[] , int size){
double sum = 0.0;
for(int i =0 ; i < size; i++){
sum += grade[i];
}
return sum / size;
}
第3题
#include <iostream>
using namespace std;
//结构体作为函数的参数
struct box{
char marker[40];
float height;
float width;
float length;
float volum;
};
void display(box b){
cout << b.marker << " " << b.height << " "<<b.width << " " << b.length<<" "<<b.volum<<endl;
}
void display(box *b){
b->volum = b->height * b->width * b->length ;
cout << b->marker << " " << b->height << " "<<b->width << " " << b->length<<" "<<b->volum<<endl;
}
int main(int argc, char const *argv[])
{
box b = {"张三",178.9,34,45,67};
display(b);
display(&b);
system("pause");
return EXIT_SUCCESS;
}
标签:编程,cout,int,double,float,C++,height,模块
From: https://www.cnblogs.com/lofly/p/16585358.html