早教吧作业答案频道 -->其他-->
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数组中放...的网友还看了以下:
五个连续奇数的和是两位数中5的最大的倍数,这五个奇数分别是多少?会采五个连续奇数的和是两位数中5的最 2020-03-30 …
甲,乙,丙和一些同学围坐在大圆桌旁,如果从甲开始数起,顺时针方向的第13人是乙,逆时针方向的第15 2020-06-13 …
仔细观察算式347+396=743,答案743正好和加数347的数字顺序相反.如果选另外三位数加3 2020-06-16 …
仔细观察算式347+396=743,答案743正好和加数347的数字顺序相反.如果选另外三位数加3 2020-06-16 …
有若干只鸡兔同在一个笼子里,从上面数,有35个头;从下面数,有94只脚.问笼中各有几只鸡和兔?输入 2020-06-26 …
仔细观察算式347+396=743,答案743正好和加数347的数字顺序相反.如果选另外三位数加3 2020-07-20 …
一个四位数,其千位数字、百位数字、十位数字、个位数字分别为A/B/C/D一个四位数,其千位数字、百 2020-07-29 …
请问468的公约数分别是多少?它的最大公约数是做?怎样操作?它和求两个数的比如46的公约数分别是请 2020-08-02 …
C++编程:输入两个实数分别输出它们的整数和小数部分,求流程图C++编程,求流程图1输入两个实数分别 2020-11-12 …
将正整数数列12345.的各项按照如下顺序排列成三角形数表:123456.求该数表第n行所有将正整数 2020-11-17 …