定義一個一維陣列,元素個數最大不超過10個,要求:
1、寫一個ReadArray函式,用以讀取陣列中各個元素的值,并回傳陣列元素的個數;
2、寫一個PrintArray函式,將陣列的各個元素值輸出;
3、寫一個SortArray函式,用以給一維陣列的各個元素進行排序,該函式有三個引數:一維陣列、陣列長度以及排序方式。如果排序方式為1,則進行升序排序,如果排序方式為-1,則進行降序排序;
4、寫一個Delete函式,用以查找洗掉陣列中某個值的元素,如果陣列中有該值,則在陣列中洗掉之;如果沒有,則輸出”查無此數“。
5、寫一個Insert函式,用來在一個有序陣列中插入一個元素,使得插入后陣列仍然有序。
6、要求在主函式中:
1)首先呼叫ReadArray讀入陣列元素并統計元素個數;
2)然后呼叫PrintArray輸出陣列各個元素;
3)然后接收用戶的排序要求,是升序還是降序,呼叫SortArray對陣列進行相應排序;
4) 再次呼叫PrintArray輸出排序后的陣列元素 ;
5) 然后接收用戶要洗掉的元素值,呼叫Delete函式對該元素進行洗掉;
6)呼叫PrintArray輸出洗掉后的各個元素值;
7)然后接收用戶要插入的元素值,呼叫Insert函式,將該元素插入到陣列中。
8)呼叫PrintArray輸出插入后的陣列元素值。
有會的幫忙寫一下吧 謝謝了
uj5u.com熱心網友回復:
//---------------------------------------------------------------------------
#pragma hdrstop
#include <tchar.h>
#include <iostream>
//---------------------------------------------------------------------------
#pragma argsused
#define DATATYPE int
#define MAX 128
using namespace std;
typedef struct
{
DATATYPE mArray[MAX];
int mlen;
}Array;
Array myArray;
void ReadArray(Array *);
void PrintArray(Array *);
void SortArray(Array *);
void DeleteElem(Array *, int);
void InsertElem(Array *, int);
int _tmain(int argc, _TCHAR* argv[])
{
int deleteelm, insertelem;
ReadArray(&myArray);
PrintArray(&myArray);
SortArray(&myArray);
PrintArray(&myArray);
cout << "delete:";
cin >> deleteelm;
DeleteElem(&myArray, deleteelm);
PrintArray(&myArray);
cout << "insert:";
cin >> insertelem;
InsertElem(&myArray, insertelem);
PrintArray(&myArray);
system("PAUSE");
return 0;
}
//---------------------------------------------------------------------------
uj5u.com熱心網友回復:
void ReadArray(Array * pBegin)
{
cout << "len:";
cin >> pBegin->mlen;
for(int i = 0; i < pBegin->mlen; i++)
{
cout << "[" << i+1 << "] = ";
cin >> pBegin->mArray[i];
}
}
uj5u.com熱心網友回復:
void PrintArray(Array * pBegin)
{
for(int i = 0; i < pBegin->mlen; i++)
{
cout << pBegin->mArray[i] << ",";
}
cout << endl;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/83387.html
標籤:基礎類
上一篇:c++改錯問題
