早教吧作业答案频道 -->其他-->
c++分别在a数组和b数组中放入若干个数,把两个数组中的数按由小到大的顺序归并到c数组中。分别在a数组和b数组中放入若干个数,把两个数组中的数按由小到大的顺序归并到c数组中。要求
题目详情
c++分别在a数组和b数组中放入若干个数,把两个数组中的数按由小到大的顺序归并到c数组中。
分别在a数组和b数组中放入若干个数,把两个数组中的数按由小到大的顺序归并到c数组中。
要求:(1)数组a和b的大小用动态分配内存方式确定
(2)至少调用一次子函数
分别在a数组和b数组中放入若干个数,把两个数组中的数按由小到大的顺序归并到c数组中。
要求:(1)数组a和b的大小用动态分配内存方式确定
(2)至少调用一次子函数
▼优质解答
答案和解析
// Test0703.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdio.h"
#include
void ConstructArr(int arr[],int iSize);
void MaoPaoSort(int arr[],int iSize);
int _tmain(int argc, _TCHAR* argv[])
{
int i = 0;
int iArrSize=0,iaSize=0,ibSize=0;
printf(_T("构造A数组,请输入A数组大小:"));
scanf(_T("%d"),&iArrSize);
if (iArrSize < 0)
{
printf(_T("Err:输入大小无效\n"));
return -1;
}
iaSize = iArrSize;
int *paA = (int *)malloc(iaSize * sizeof(int));
if (NULL != paA)
{
ConstructArr(paA,iaSize);
}
printf(_T("构造B数组,请输入B数组大小:"));
scanf(_T("%d"),&iArrSize);
if (iArrSize < 0)
{
printf(_T("Err:输入大小无效\n"));
return -1;
}
ibSize = iArrSize;
int *paB = (int *)malloc(iaSize * sizeof(int));
if (NULL != paB)
{
ConstructArr(paB,ibSize);
}
int icSize = iaSize + ibSize;
int *paC = (int *)malloc(icSize * sizeof(int));
if (NULL != paC)
{
for (i=0;i {
if (i {
paC[i] = paA[i];
}
else
{
paC[i] = paB[i-iaSize];
}
}
}
printf(_T("C数组的元素为: "));
MaoPaoSort(paC,icSize);
printf(_T("sort: "));
for (i=0;i< icSize;i++)
{
printf(_T("%d "),paC[i]);
}
printf(_T("\n"));
free(paA);
free(paB);
free(paC);
return 0;
}
void ConstructArr(int arr[],int iSize)
{
int i = 0,iInput = 0;
printf(_T("请输入%d个整数: "),iSize);
printf(_T("\n"));
for (i=0;i {
printf(_T("输入第%d个整数:"),i);
scanf(_T("%d"),&iInput);
arr[i] = iInput;
printf(_T("\n"));
}
printf(_T("数组的元素为: "));
for(i=0;i {
printf(_T("%d "),arr[i]);
}
printf(_T("\n"));
}
void MaoPaoSort(int arr[],int iSize)
{
int temp = 0;
for (int i = iSize - 1;i >0 ;i--)
{
for (int j = 0;j < i;j++)
{
if (arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
//
#include "stdafx.h"
#include "stdio.h"
#include
void ConstructArr(int arr[],int iSize);
void MaoPaoSort(int arr[],int iSize);
int _tmain(int argc, _TCHAR* argv[])
{
int i = 0;
int iArrSize=0,iaSize=0,ibSize=0;
printf(_T("构造A数组,请输入A数组大小:"));
scanf(_T("%d"),&iArrSize);
if (iArrSize < 0)
{
printf(_T("Err:输入大小无效\n"));
return -1;
}
iaSize = iArrSize;
int *paA = (int *)malloc(iaSize * sizeof(int));
if (NULL != paA)
{
ConstructArr(paA,iaSize);
}
printf(_T("构造B数组,请输入B数组大小:"));
scanf(_T("%d"),&iArrSize);
if (iArrSize < 0)
{
printf(_T("Err:输入大小无效\n"));
return -1;
}
ibSize = iArrSize;
int *paB = (int *)malloc(iaSize * sizeof(int));
if (NULL != paB)
{
ConstructArr(paB,ibSize);
}
int icSize = iaSize + ibSize;
int *paC = (int *)malloc(icSize * sizeof(int));
if (NULL != paC)
{
for (i=0;i
if (i
paC[i] = paA[i];
}
else
{
paC[i] = paB[i-iaSize];
}
}
}
printf(_T("C数组的元素为: "));
MaoPaoSort(paC,icSize);
printf(_T("sort: "));
for (i=0;i< icSize;i++)
{
printf(_T("%d "),paC[i]);
}
printf(_T("\n"));
free(paA);
free(paB);
free(paC);
return 0;
}
void ConstructArr(int arr[],int iSize)
{
int i = 0,iInput = 0;
printf(_T("请输入%d个整数: "),iSize);
printf(_T("\n"));
for (i=0;i
printf(_T("输入第%d个整数:"),i);
scanf(_T("%d"),&iInput);
arr[i] = iInput;
printf(_T("\n"));
}
printf(_T("数组的元素为: "));
for(i=0;i
printf(_T("%d "),arr[i]);
}
printf(_T("\n"));
}
void MaoPaoSort(int arr[],int iSize)
{
int temp = 0;
for (int i = iSize - 1;i >0 ;i--)
{
for (int j = 0;j < i;j++)
{
if (arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
看了c++分别在a数组和b数组中放...的网友还看了以下:
下列语句中正确的是()A.若a为有理数,则必有|a|-a=0B.两个有理数的差小于被减数C.两个有 2020-05-13 …
在区位选择方面,沃尔玛、好又多两大超市的特点是()A.城市交通干道的左侧B.城市交通干道的右侧C. 2020-05-15 …
(1)某盗窃案件有A、B、C、D四人嫌疑最大,在对他们调查时,他们作了如下的回答:A:我没有作案, 2020-05-17 …
关于波的干涉,下列说法正确的是()A.一列波影响了另一列波,这就叫做干涉B.两列波相互叠加时,必定 2020-06-27 …
用A、B、C三种塑料板如图(每种都由若干个1×1的正方形组成),拼成10个5×5的正方形.已有A型 2020-07-07 …
下列说法正确的是()A.两个无理数的和一定是无理数B.两个无理数的差一定是无理数C.两个无理数的积 2020-07-23 …
某种植物的主干长出若干数目的支干,每个支干又长出同样数目的小分支,主干、支干和小分支的总数是13,则 2020-11-17 …
列方程,解应用题:1.某种植物的主干长出若干数目的支干,每个支干又长出同样数目的小分支,主干、支干和 2020-11-17 …
数学方程应用题A、B、C三个车间,每个车间存放相同袋数的面粉,A车间有一台皮带机,12个人干了5个小 2020-11-20 …
下列说法错误的是A真分数一定比假分数小B两个是质数的积一定是合数C两位小数表示百分之几D五分之六的分 2020-11-24 …