⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 double_array.cpp

📁 我学习C++ Primer Plus过程中写下的课后作业的编程代码
💻 CPP
字号:
//6.编写一个程序,它使用下列函数:
//Fill_array()将一个double数组的名称和长度作为参数,它提示用户输入
//double值,并将这些值存储到数组中。当数组被填满或用户输入了非数字时,
//输入将停止,并返回实际输入了多少个数字。
//Show_array()将一个double数组的名称和长度作为参数,并显示该数组的内容。
//Reverse-array()将一个double数组的名称和长度作为参数,并将存储在数组中
//的值的顺序反转。程序将使用这些函数来填充数组,然后显示数组;反转数组,
//然后显示数组;反转数组中除第一个和最后一个元素之外的所有元素,然后显示数组。

#include <iostream>
const int MAX=10;
int Fill_array(double arr[],int n);		              //填充数组
void Show_array(const double arr[], int n);	          //显示数组内容
void Reverse_array(double arr[],int first,int last);  //反转数组内容

int main()
{
	using namespace std;
	int n;
	double data[MAX];
	cout<<"请输入不多于"<<MAX<<"个double值(q to quit)"<<endl;
	n=Fill_array(data,MAX);				  //填充数组
	cout<<"您输入的double值为:"<<endl;
	Show_array(data,n);				      
	cout<<"反转数组后:"<<endl;
	Reverse_array(data,1,n);			  //反转数组中所有的元素
	Show_array(data,n);				      
	cout<<"反转数组中除第一个和最后一个元素之外的所有元素后:"<<endl;
	Reverse_array(data,2,n-1);		   	  //除第一个和最后一个元素,都反转
	Show_array(data,n);
	return 0;
}


int Fill_array(double arr[],int n)
{
	using namespace std;
	int i=0;
	int temp;
	for(i=0;i<n;i++)
	{
		cin>>temp;
		if(!cin)    //bad input
		{
			cin.clear();
			while(cin.get()!='\n')
				continue;
			cout<<"Bad input:input process terminated.\n";
			break;
			
		}
		else
			arr[i]=temp;
	}
	return i;
}

void Show_array(const double arr[],int n)
{
	using namespace std;
	for(int i=0;i<n;i++)
	{
		cout<<arr[i]<<endl;
	}
}

void Reverse_array(double arr[],int first,int last) //first,last是数组的位置号,非下标号
{
	double temp;
	while(first<last)
	{   
		temp=arr[first-1];
		arr[first-1]=arr[last-1];
		arr[last-1]=temp;
		first++;
		last--;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -