一道c语言试题!求高手找简便方法!

#include<stdio.h>intmain(){inta[4],b[4];inti,j,tmp;for(i=0;i<4;i++)scanf("%d",&b[i]);... #include <stdio.h>
int main()
{
int a[4],b[4];
int i,j,tmp;
for (i=0;i<4;i++)
scanf("%d",&b[i]);
for (i=0;i<4;i++)
{
a[i]=0;
for (j=0;j<=i;j++)
{
a[i]+=b[j];
b[a[i]%4]+=a[j];
}
}
tmp=1;
for (i=0;i<4;i++)

{
a[i]%=10;
b[i]%=10;
tmp*=a[i]+b[i];
}
printf("%d\n",tmp);
return 0;
}

输入 2 3 5 7 输出多少

有没有简单的方法啊?这么一步步算下去实在太费时间了!谢谢大家!!!
展开
 我来答
匿名用户
2011-03-09
展开全部
5850
这种是笔试题吧 只能拿笔了 有一点点规律

头 for (i=0;i<4;i++) scanf("%d",&b[i]); 置b
尾tmp=1; 累乘记1
for (i=0;i<4;i++) {a[i]%=10;b[i]%=10;tmp*=a[i]+b[i]; }tmp=a b个尾数和的积 即要搞定ab数组终值

ffor (i=0;i<4;i++)
{a[i]=0; 处理每一个a 从a[0]~a[3]进行设定 a[]初值0
for (j=0;j<=i;j++)
{a[i]+=b[j];b[a[i]%4]+=a[j];} a[i]=b[0]
到b[i]的累加值 b[累加值%4]自加a[j] 这里只能手写 }
i j b[] a[]
0 0 2 3 5 7 2 ? ? ? a[i]+=b[j];(用笔头点着这一行语句)
0 0 2 3 7 7 2 ? ? ? b[a[i]%4]+=a[j];(用笔头点着这一行语句 a[i]就是2, 2%4=2 )
演算时不用象我这样抄2行 直接用擦掉重写或盖着写都行

最终a={2, 5, 26, 92} b={94,8,49,33}
wanda1416
2011-03-09 · TA获得超过302个赞
知道小有建树答主
回答量:173
采纳率:0%
帮助的人:204万
展开全部
我很遗憾的告诉你,你的那个题目没有简便方法。但有时一些写结果的题目是由某些算法改过来的,那样才可以用简便方法,不过前提是你了解那个算法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
budongszl
2011-03-09 · TA获得超过660个赞
知道答主
回答量:276
采纳率:0%
帮助的人:161万
展开全部
5850
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
abc553226713
2011-03-09 · 超过10用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:34.6万
展开全部
简单方法。。你要是为了提高效率那就多用指针了。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我nai大连
2011-03-09 · TA获得超过725个赞
知道小有建树答主
回答量:740
采纳率:0%
帮助的人:248万
展开全部
楼上厉害,确实是5850,提问者这段代码是干什么的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-03-09
展开全部
运行一遍不久知道答案了吗?何必呢

***** 发个
|黑 信| 神马
|吧 息|
|安 来| 广 就那么难?
|全 源| 告
|网 :| 年代
*****
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式