采用分治算法求数组主元法并行地对数组a中的元素求和

采用分治法并行地对数组a中的元素求和_百度知道
采用分治法并行地对数组a中的元素求和
采用分治法并行地对数组a中的元素求和
我有更好的答案
h& int sum(int arr[];
for (i = 0#include &lt, int n){
int i, int n), 3, 12, 5;n&, 4, 7; int main(){
int a[] = {10;} int sum(int arr[], 34, 5, 9};
printf(&%d\ i++)
if (arr[i] % 2 == 0)
result += arr[i], sum(a, 9));
return 0; i & n, result = 0;stdio
采纳率:97%
来自团队:
是不能错过的?
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。有哪个VB高手帮我做下下面的VB编程题啊??不然期末考就完了【河南工业大学吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:458,279贴子:
有哪个VB高手帮我做下下面的VB编程题啊??不然期末考就完了收藏
1.已知x,y,z 3个变量中存放了3个不同的数,比较它们的大小并进行调整,使得x&y&z。2.计算0~200之间所有能被11或5整除的数之和3.输入三角形三条边a,b,c的值,根据其数值,判断能否构成三角形。4.随机产生10个[30,100]内的整数,求最小值及所对应的下标。5.随机产生10个[30,100]内的整数,求最大值、最小值和平均值。6.随机产生10个[30,100]内的整数,求最大值及所对应的下标7.某次歌曲大奖赛,有7个评委。如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。8.求s=a+aa+aaa+...aaaaa(n个a),其中a和n的值随机产生,a的范围是[1,9]的整数,n的范围是[5,10]。如a=3,n=6,则s=3+33+333++333333。编程确定n和a的值,并计算s。9.求100以内的素数。10.计算100~300之间所有能被3和7整除的数之和。11.输入一年份,判断它是否为闰年,并显示有关信息。(判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除)12.编程求200--400范围内5的倍数或7的倍数之和。(一个数如果同时是7和5的倍数,则只能加一次。)13.利用InputBox函数输入两个整数,求它们的最大公约数。14.随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。例如,产生246,输出是642。15.从键盘输入任意长度的字符串,要求将字符顺序倒置,例如,将输入的"ABCDEFG"变换成"GFEDCBA"。16.利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出该矩阵所有数据之和17.编一子过程ProcMin,求一维数组a中的最小值,子过程的形参自己确定。18.编一个选择排序法子过程,对已知的若干整数按递减次序排列。提示:子过程的形式为sub sort1(a%())。19.编一个选择排序法子过程,对已知的若干整数按递增次序排列。提示:子过程的形式为sub sort1(a%())。20.已知有序数组a(),编程插入x(x的值为14)。数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。21.已知有序数组a(),编程插入x(x的值为14)。数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。22.声明一个整型的二维数组a(1 to 4,1 to 4),用随机函数产生各元素,范围介于[1,20]之间,编程将第2行和第4行对应元素交换。23.定义三个4×4的二维数组A,B,C,A和B中的元素均随机生成,数组A的范围是1~20,数组B的范围是100~200,数组C是A和B相加得到的。请编程生成并输出A,B,C。24.随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值。25.利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出每行中的最大值和下标。26.声明一个整型的二维数组a(1 to 4,1 to 4),用随机函数产生各元素,范围介于[1,20]之间,编程将第1行和第3行对应元素交换。27.编写一个过程计算并输出区间[100,1000]内所有素数的和(要求判断素数使用过程(函数或子过程)来实现。调用该过程。(提示:只能被1和自身整除的自然数称为素数。)28.随机生成一个整型的二维数组,范围在[10,20]之间,以上三角形式输出该数组。29.随机生成一个整型的二维数组,范围在[10,20]之间,以下三角形式输出该数组。30.利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[40,80]内的整数,求它的最大值及所对应的下标。31.已知一维数组a()中的元素已排序,分别为{12,15,21,25,27,35,36,39,48,52},编程将30插入数组a,并使a依然有序。32.已知数组a(),编程删除a中第5个元素。数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。33.用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[40,80]内的整数,求它的最小值及所对应的下标。
2017年2月南京工业大学自考报名开始,南京工业大学自考招生简章,新生报名须知.[尚德]南京工业大学自考:自考注册,自考流程,自考政策,合格线.南京工业大学自考&&
??、啊&&&
哪个习题集?????
。。。。vb。。π_π心中一大痛。。。同求啊同求。。。
我们要考的题一摸一样啊
我有 楼主邮箱呢?
1.已知x,y,z 3个变量中存放了3个不同的数,比较它们的大小并进行调整,使得x&y&zPrivate Sub Command1_Click()Dim x!, y!, z!x = InputBox("input x")y = InputBox("input y")z = InputBox("input z")Print "
z"Print "排序前"; "
"; zIf x & y Then t = x: x = y: y = tIf x & z Then t = x: x = z: z = tIf y & z Then t = y: y = z: z = tPrint "排序后" & x & "
" & zEnd Sub2.计算0~200之间所有能被11或5整除的数之和
Private Sub Command1_Click()
Dim i As Integer, j As Integer, t As Integer, s As Integer
j = 0 t = 0s = 0For i = 0 To 200If i Mod 5 = 0 Thenj = j + iEnd IfIf i Mod 11 = 0 Thent = t + iEnd IfNext is = j + tPrint "s="; sEnd Sub3.输入三角形三条边a,b,c的值,根据其数值,判断能否构成三角形。
Private Sub Command1_Click()Dim x%, y%, z%x = Val(InputBox("input x"))y = Val(InputBox("input x"))z = Val(InputBox("input x"))If x + y & z And x + z & y And y + z & x ThenMsgBox ("能够成三角形")If x = y And y = z ThenMsgBox ("是等边三角形")ElseIf x = y Or x = z Or y = z ThenMsgBox ("是等腰三角形")ElseIf Sqr(x * x + y * y) = z Or Sqr(y * y + z * z) = x Or Sqr(x * x + z * z) = y ThenMsgBox ("是直角三角形")ElseMsgBox ("是其他三角形")End IfElseMsgBox ("不能够成三角形")End IfEnd Sub4.随机产生10个[30,100]内的整数,求最小值及所对应的下标。
Private Sub Form_Click()Dim a(9), min%, imin%For i = 0 To 9a(i) = Int(Rnd * 71 + 30)Print a(i);Next iPrintmin = a(0)For i = 1 To 9If min & a(i) Then min = a(i): imin = iNext iPrint "min="; minPrint "imin="; iminEnd Sub5.随机产生10个[30,100]内的整数,求最大值、最小值和平均值。
Private Sub Form_Click()Dim i%, min%, max%, aver%, x%min = 100max = 30aver = 0For i = 1 To 10x = Int(Rnd * 71 + 30)PIf x & max Then max = xIf x & min Then min = xaver = aver + xNext iPrintPrint "最小值="; min, "最大值="; max, "平均值="; aver / 20End Sub
6.随机产生10个[30,100]内的整数,求最大值及所对应的下标
Private Sub Form_Click()Dim a(9), max%, imax%For i = 0 To 9a(i) = Int(Rnd * 71 + 30)Print a(i);Next iPrintmax = a(0)For i = 1 To 9If max & a(i) Then max = a(i): imax = iNext iPrint "max="; maxPrint "imax="; imaxEnd Sub7.某次歌曲大奖赛,有7个评委。如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。
Private Sub Command1_Click()Dim mark!, aver!, i%, max1!, min1!aver = 0For i = 1 To 7mark = InputBox("输入第" & i & "位评委的打分")If i = 1 Thenmax1 = mark: min1 = markElseIf mark & min1 Thenmin1 = markElseIf mark & max1 Thenmax1 = markEnd IfEnd Ifaver = aver + markNext iaver = (aver - min1 - max1) / 5Print averEnd Sub8.求s=a+aa+aaa+...aaaaa(n个a),其中a和n的值随机产生,a的范围是[1,9]的整数,n的范围是[5,10]。如a=3,n=6,则s=3+33+333++333333。编程确定n和a的值,并计算s。
Private Sub Form_Click()Dim s!, t!, i!, a%, n%a = Int(Rnd * 9 + 1)n = Int(Rnd * 6 + 5)t = 0: s = 0Print "a="; a, "n="; nFor i = 1 To nt = t * 10 + as = s + tPNext iPrintPrint "s="; sEnd Sub9.求100以内的素数。
Private Sub Command1_Click()Dim i, a, kFor i = 1 To 100k = 1For a = 2 To Sqr(i)If i Mod a = 0 Then k = 0Next aIf k = 1 Then PNext iEnd Sub10.计算100~300之间所有能被3和7整除的数之和。
Private Sub Command1_Click()Dim i As Integer, s As Integers = 0For i = 100 To 300If i Mod 3 = 0 And i Mod 7 = 0 Thens = s + iEnd IfNext iPrint "s="; sEnd Sub11.输入一年份,判断它是否为闰年,并显示有关信息。(判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除 Private Sub Command1_Click()Dim y%y = InputBox("输入年份y")If y Mod 4 = 0 And y Mod 100 && 0 Or y Mod 400 = 0 ThenPrint y & "为闰年"ElsePrint y & "为平年"End IfEnd Sub
12.编程求200--400范围内5的倍数或7的倍数之和。(一个数如果同时是7和5的倍数,则只能加一次。)Private Sub Command1_Click()Dim i As Integer, j As Integer, t As Integer, m As Integer, s As Integerj = 0t = 0s = 0For i = 200 To 400If i Mod 5 = 0 Thenj = j + iEnd IfIf i Mod 7 = 0 Thent = t + iEnd IfIf i Mod 5 = 0 And i Mod 7 = 0 Thenm = m + iEnd IfNext is = j + t - mPrint "s="; sEnd Sub或Private Sub Command1_Click()Dim i%, sumsum = 0For i = 200 To 400If i Mod 5 = 0 Or i Mod 7 = 0 Thensum = sum + iEnd IfNext iPrint sumEnd Sub13.利用InputBox函数输入两个整数,求它们的最大公约数。
Private Sub Command1_Click()Dim m As Integer, n As IntegerDim a, b, rm = InputBox("请输入第一个正整数:")n = InputBox("请输入第二个正整数:")a = m: b = n: r = bDo While m & 0 And n & 0 And r & 0r = a Mod ba = bb = rLoopP "和"; "最大公约数是:"; aEnd Sub14.随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。例如,产生246,输出是642。
Private Sub Command1_Click()Text1 = Int(Rnd * 900 + 100)End SubPrivate Sub Command2_Click()Dim x%, x1%, x2%, x3%x = Val(Text1)x1 = x Mod 10x2 = (x Mod 100) \ 10x3 = x \ 100Label1 = x1 * 100 + x2 * 10 + x3End Sub15.从键盘输入任意长度的字符串,要求将字符顺序倒置,例如,将输入的"ABCDEFG"变换成"GFEDCBA"。
Private Sub Command1_Click()Dim a$, i%, c$, d$, n%a = InputBox$("输入字符串")n = Len(a)For i = 1 To Int(n \ 2)c = Mid(a, i, 1)Mid(a, i, 1) = Mid(a, n - i + 1, 1)Mid(a, n - i + 1) = cNext iPrint aEnd Sub
16.利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出该矩阵所有数据之和Private Sub Form_Click()Dim a(3, 3), sum%For i = 0 To 3For j = 0 To 3a(i, j) = Int(Rnd * 31 + 20)Next jNext iFor i = 0 To 3For j = 0 To 3Print a(i, j);Next jPrintNext iFor i = 0 To 3For j = 0 To 3sum = sum + a(i, j)Next jNext iPrint "sum="; sumEnd Sub17.编一子过程ProcMin,求一维数组a中的最小值,子过程的形参自己确定。
Sub s(b(), min)Dim i%min = b(LBound(b))For i = LBound(b) + 1 To UBound(b)If b(i) & min Then min = b(i)Next iEnd SubPrivate Sub Form_Click()Dim a(1 To 10), amin, i%For i = 1 To 10a(i) = Int(Rnd * 101 + 300)Print a(i)Next iCall s(a(), amin)PrintPrint "min="; aminEnd Sub18.编一个选择排序法子过程,对已知的若干整数按递减次序排列。提示:子过程的形式为sub sort1(a%())。Sub sort(a())Dim i%, j%, t%, n%, imax%n = UBound(a)For i = 0 To n - 1imax = iFor j = i + 1 To nIf a(j) & a(imax) Then imax = jNext jt = a(i)a(i) = a(imax)a(imax) = tNext iEnd SubPrivate Sub Form_Click()Dim b(), i%b = Array(23, 5, 78, 99, 67, 94)Call sort(b())For i = LBound(b) To UBound(b)Print b(i)NextEnd Sub19.编一个选择排序法子过程,对已知的若干整数按递增次序排列。提示:子过程的形式为sub sort1(a%())。
Sub sort(a())Dim i%, j%, imin%For i = 0 To UBound(a) - 1imin = iFor j = i + 1 To UBound(a)If a(j) & a(imin) Then imin = jNext jt = a(i)a(i) = a(imin)a(imin) = tNext iEnd SubPrivate Sub Form_Click()Dim b(), i%b = Array(8, 9, 4, 2, 6)Call sort(b())For i = 0 To UBound(b)Print b(i);NextEnd Sub20.已知有序数组a(),编程插入x(x的值为14)。数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。21.编一个冒泡排序法子过程,对已知的若干整数按递减次序排列。提示:子过程的形式为sub sort1(a%())。
Sub sort(a())Dim imim%, i%, j%For i = 0 To UBound(a) - 1For j = 0 To UBound(a) - 1 - iIf a(j + 1) & a(j) Thent = a(j): a(j) = a(j + 1): a(j + 1) = tEnd IfNext jNext iEnd SubPrivate Sub Form_Click()Dim b(), i%b = Array(8, 9, 4, 2, 6)Call sort(b())For i = 0 To UBound(b)Print b(i)Next iEnd Sub22.声明一个整型的二维数组a(1 to 4,1 to 4),用随机函数产生各元素,范围介于[1,20]之间,编程将第2行和第4行对应元素交换。
Private Sub Form_Click()Dim a(0 To 3, 0 To 3), i%, j%, tPrint "排序前"For i = 0 To 3For j = 0 To 3a(i, j) = Int(Rnd * 20 + 1)Print Tab(j * 5); a(i, j);Next jPrintNext iPrint "排序后"For j = 0 To 3t = a(1, j): a(1, j) = a(3, j): a(3, j) = tNext jFor i = 0 To 3For j = 0 To 3Print Tab(j * 5); a(i, j);Next jPrintNext iEnd Sub23.定义三个4×4的二维数组A,B,C,A和B中的元素均随机生成,数组A的范围是1~20,数组B的范围是100~200,数组C是A和B相加得到的。请编程生成并输出A,B,C。
Dim A(4, 4) As Integer, B(4, 4) As Integer, C(4, 4) As IntegerPrivate Sub Command1_Click()Picture1.ClsPicture2.ClsFor i = 1 To 4For j = 1 To 4A(i, j) = Int(Rnd * 20 + 1)B(i, j) = Int(Rnd * 101 + 100)Picture1.Print A(i, j); "";Picture2.Print B(i, j); "";Next jPicture1.PrintPicture2.PrintNext iEnd SubPrivate Sub Command2_Click()Picture3.ClsFor i = 1 To 4For j = 1 To 4C(i, j) = A(i, j) + B(i, j)Picture3.Print C(i, j); "";Next jPicture3.PrintNext iEnd Sub24.随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值。
Private Sub Form_Click()Dim a(1 To 10) As Integer, i%, maxa%, mina%, avera!For i = 1 To 10a(i) = Int(Rnd * 100 + 1)Next imina = a(1)maxa = a(1)avera = a(1)For i = 2 To 10If a(i) & maxa Then maxa = a(i)If a(i) & mina Then mina = a(i)avera = avera + a(i)Next iFor i = 1 To 10Print a(i)Next iPrintPrint "max="; maxa, "mina="; mina, "aver="; avera / 10End Sub25.利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出每行中的最大值和下标。
Dim a(4, 4) As IntegerPrivate Sub Command1_Click()Dim max%, maxi%, maxj%maxi = 0: maxj = 0For i = 1 To 4For j = 1 To 4If a(i, j) & max Thenmax = a(i, j): maxi = i: maxj = jEnd IfNext jNext iPrint "最大值为:"; max, "最大值下标为i="; ""; "j="; maxjEnd Sub
Private Sub Command2_Click()Picture1.ClsFor i = 1 To 4For j = 1 To 4a(i, j) = Int(Rnd * 31 + 20)Picture1.Print a(i, j); "";Next jPicture1.PrintNext iEnd Sub26.声明一个整型的二维数组a(1 to 4,1 to 4),用随机函数产生各元素,范围介于[1,20]之间,编程将第1行和第3行对应元素交换。
Private Sub Form_Click()Dim a%(1 To 10, 1 To 10), i%, j%Print "排序前"For i = 1 To 4For j = 1 To 4a(i, j) = Int(Rnd * 20 + 1)Print Tab(j * 4); a(i, j);Next jPrintNext iPrint "排序后"For j = 1 To 4t = a(1, j): a(1, j) = a(3, j): a(3, j) = tNext jFor i = 1 To 4For j = 1 To 4Print Tab(j * 4); a(i, j);Next jPrintNext iEnd Sub27.编写一个过程计算并输出区间[100,1000]内所有素数的和(要求判断素数使用过程(函数或子过程)来实现。调用该过程。(提示:只能被1和自身整除的自然数称为素数。)
Function sushu%(ByVal x%)Dim m%, tag As Boolean, i%m = Val(x)tag = TrueFor i = 2 To m - 1If (m Mod i) = 0 Then tag = FalseNext iIf tag Then sushu = xEnd FunctionPrivate Sub Command1_Click()Dim i%, k%For i = 100 To 1000If sushu(i) Then List1.AddItem iNext iSum = 0For k = 0 To List1.ListCount - 1Sum = Sum + Val(List1.List(k))Next kLabel1 = "[100,1000]内所有的素数和为:" & SumEnd Sub28.随机生成一个整型的二维数组,范围在[10,20]之间,以上三角形式输出该数组。
Dim a%(3, 3), b%(3, 3)Private Sub Command1_Click()Picture1.ClsFor i = 0 To 3For j = i To 3Picture1.Print Tab(j * 6); b(i, j);Next jPicture1.PrintNext iEnd SubPrivate Sub Form_Load()For i = 0 To 3For j = 0 To 3a(i, j) = Int(Rnd * 11 + 10)b(i, j) = Int(Rnd * 11 + 10)Next jNext iEnd Sub29.随机生成一个整型的二维数组,范围在[10,20]之间,以下三角形式输出该数组。
Dim a%(3, 3), b%(3, 3)Private Sub Command1_Click()Picture1.ClsFor i = 0 To 3For j = 0 To iPicture1.Print a(i, j); "";Next jPicture1.PrintNext iEnd SubPrivate Sub Form_Load()For i = 0 To 3For j = 0 To 3a(i, j) = Int(Rnd * 11 + 10)b(i, j) = Int(Rnd * 11 + 10)Next jNext iEnd Sub30.已知一维数组a()中的元素已排序,分别为{12,15,21,25,27,35,36,39,48,52},编程将30插入数组a,并使a依然有序。
Private Sub Command1_Click()x = Val(Text1)For k = 0 To List1.ListCount - 1If x & Val(List1.List(k)) Then exitforNext kList1.AddItem x, kEnd SubPrivate Sub Form_Load()Dim a(), i%, k%, x%, n%a = Array(12, 15, 25, 27, 35, 36, 39, 48, 52)n = UBound(a)For i = 0 To nList1.AddItem a(i)Next iEnd Sub31.已知数组a(),编程删除a中第5个 元素。数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。
Private Sub Form_Click()Dim a(), i%, j%a = Array(12, 6, 4, 89, 75, 63, 100, 20, 31)j = UBound(a)For i = 0 To jPrint a(i)Next iPrintFor i = 5 To ja(i - 1) = a(i)Next ij = j - 1ReDim Preserve a(j)For i = 0 To jPrint a(i)Next iPrintEnd Sub32.利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[40,80]内的整数,求它的最小值及所对应的下标。
Private Sub Command1_Click()Dim a%(3, 3), i%, j%, sum%For i = 0 To 3For j = 0 To 3a(i, j) = Int(Rnd * 41 + 40)Picture1.Print a(i, j); "";Next jPicture1.PrintNext iimax = 0For i = 0 To 3For j = 0 To 3If a(i, imim) & a(i, j) Thenimin = jEnd IfNext jPicture2.Print "第"; i + 1; "行"; "最小值为"; a(i, imin); "下标为"; "("; ")"Next iEnd Sub
登录百度帐号推荐应用他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)01:23 提问
将a数组中的数依次取出分别与b数组中的数挨个相加得到新的数组再输出新数组的和
有数组a[ ]={1,2,3,4,5}和数组b[ ]={1,2,3,4,5},需要将a数组中的数依次取出分别与b数组中的数相加得到新的数组再输出新数组的和,即第一次将a中的1分别与b中的1,2,3,4,5相加,得到[2,3,4,5,6],输出为2+3+4+5+6=20;第二次为将a中的2分别与b中的1,2,3,4,5相加,得到[3,4,5,6,7],输出为3+4+5+6+7=25,之后类似,求用C/C++编写,急用,感激不尽!!!
按赞数排序
楼上的做法有点笨重吧,首先b数组是永远求和的,没必要每次都重新遍历再求和。
可以在楼上的基础上进行改进:
1.对b数组求和
2.输出值=a数组当前元素*b数组个数+b数组的和
int main()
{int a[ ]={1,2,3,4,5},b[ ]={1,2,3,4,5};
int x=sizeof(a)/sizeof(a[0]), y=sizeof(b)/sizeof(b[0]);
int i,j;int c[y],sum=0;
for(i=0;i&x;i++)
{ printf("c(%d)=",i);
for(j=0;j&y;j++)
{ c[j]=a[i]+b[j];
sum=sum+c[j];
printf("%d ",c[j]);
printf("\n
sum(%d)=%d \n",i,sum);
首先计算B的整体值是对的,但是 也得注意楼主要求的输出格式。。。。
int main()
{int a[ ]={1,2,3,4,5},b[ ]={1,2,3,4,5};
int i,j;sum=0;sum1=0;
for(i=0;i&b.i++)
{sum+=b[i];
for(j=0;j&a.j++)
sum1=sum+a[i]*b.
printf(sum1);
a数组每个元素要依次和b数组逐个元素相加,那么可以先把b数组各元素求和保存到一个变量
如果仅仅为了遍历新的数组元素值,没必要产生新数组啊。
遍历a数组,每个元素加上这个变量进行输出呗。
int a[ ]={1,2,3,4,5};
int b[ ]={1,2,3,4,5};
int size = sizeof(a)/sizeof(a[0]);
int sum[ ] = {};
sum[size] = {0,0,0,0,0}
for (i = 0; i & i++){
for (j = 0; j & j++) {
b[j] = b[j] + a[i];
for(j = 0; j & j++){
sum[i] = sum[i] + b[j];
int main()
int sum = 0;
int a[] = {1,2,3,4,5,};
int b[] = {1,2,3,4,5};
int c[6] = {0};
for(i = 0;i & 5;i++)
for(j = 0;j & 5;j++)
c[j] = a[i] + b[j];
sum= sum + c[j];
printf("%d\n",sum);
楼主,我这个代码绝对符合你的要求。
#include&stdio.h&
int main(){
int a[]={1,2,3,4,5};
int b[]={1,2,3,4,5};
int c[]={0,0,0,0,0};
for(i=0;i&5;i++){
for(j=0;j&5;j++){
c[j]=a[i]+b[j];
sum+=c[j];
for(j=0;j&5;j++)
printf("%d+",c[j]);
printf("%d=",c[j]);
printf("%d\n",sum);
b 的每个元素为
b[i] + a[0] + a[1] .... + a[4]
所以 b[0] + a[0] + a[1] .... + a[4]
b[1] + a[0] + a[1] .... + a[4]
b[2] + a[0] + a[1] .... + a[4]
b[3] + a[0] + a[1] .... + a[4]
b[4] + a[0] + a[1] .... + a[4]
sum(b[]) + 5*sum(a[])
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐用二分法查找数组a[10] = {2,3,6,1,9,8,7,4,0,5}中元素9_百度知道
用二分法查找数组a[10] = {2,3,6,1,9,8,7,4,0,5}中元素9
我有更好的答案
如果大于要找的值则在下半区间继续找
return Lookup(find,array,low,mid - 1);
/&#47,6,5;如果小于要找的值则在上半区间继续找
return Lookup(find,array,mid + 1,high);}void main(){
//输出映射的位置
printf(&The position of 9 in the array is %d&;序列应该基本有序才能使用二分法
int a[10] = {0,1,2,3,4,5,6,7,8,9};
Lookup(int find,4};
int pos = Lookup(9,); find)/&#47,int array[],1,7, 0, 9);
if (pos == -1)
printf(&There is not 9 in the array&quot,9;表示未找到元素
int mid = (low + high)/2
if (array[mid] == find)/序列对应的位置值
int position[10] = {8;///&#47,2,3,0;找到元素,元素的位置为mid
if (array[mid] &gt,int high){
if (low & high)
return -1,int low
采纳率:83%
嗯,先排序,然后二分查找
来自:求助得到的回答
二分查找法的前提是数据有序排序,你要先进行排序
为您推荐:
其他类似问题
您可能关注的内容
二分法查找的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 分治算法求数组主元 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信