c++关于头文件的疑惑
首先是实验要求:
1、创建源程序文件myFunctions.cpp,在其中定义下列函数:
1)findMaxElement1D(), 返回一维数组中的最大值
2)findMaxElement2D(), 返回二维数组中的最大值
3)sort1D(), 对一维数组用冒泡法排序
2、建立头文件myFunctions.h,在其中对上述3个函数进行声明
3、创建源程序文件main.cpp, 在其中#include “myFunctions.h”, 定义主函数main(),定义一个一维数组,定义一个二维数组,从键盘输入数组元素,输出这两个数组,并调用上述3个函数,输出函数返回的结果。
下面是代码:
main.cpp:
#include "myFunctions.h"
#include <iostream>
using namespace std;
int main(){
float a[5];
float b[3][3];
cout<<"输入一个五个数的二维数组"<<endl;
for(int i=0;i<5;i++){
cin>>a[i];
}
cout<<"输入一个3×3的二维数组"<<endl;
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
cin>>b[i][j];
}
}
cout<<"你输入的数组分别为:"<<endl;
for(int i=0;i<5;i++){
cout<<a[i];
}
cout<<'\n';
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
cout<<b[i][j];
}
}
//输出调用函数返回的结果
cout<<"函数1"<<findMaxElement1D(a,5)<<endl;
cout<<"函数2"<<findMaxElement2D(b,3)<<endl;
cout<<"函数3";
sort1D(a,5);
system("pause");
return 0;
}
myFunctions.cpp:
#include <iostream>
using namespace std;
float findMaxElement1D(float a[],int n){
float max=a[0];
for(int i=0;i<n;i++){
if(max<a[i]){
max=a[i];
}
}
return max;
}
float findMaxElement2D(float a[][3],int n){
float max=a[0][0];
for(int i=0;i<n;i++){//行循环
for(int j=0;j<3;j++){//列循环
if(max<a[i][j]){
max=a[i][j];
}
}
}
return max;
}
void sort1D(float a[],int n){//冒泡排序法
float temp;
for(int i=0;i<n-1;i++){//n个数n-1个需要做循环
for(int j=0;j<n-1-i;j++){//每一趟循环多少次
if(a[j]>a[j+1]){
temp=a[j+1];a[j+1]=a[j];a[j]=a[j+1];
}
}
}
for(int i=0;i<n;i++){
cout<<a[i]<<endl;
}
}
myFunctions.h:
#include <iostream>
#pragma once
using namespace std;
float findMaxElement1D(float a[],int n);
float findMaxElement2D(float a[][3],int n);
void sort1D(float a[],int n);
vscode显示程序没有错误但是无法运行