标题:简单数组简化问题
只看楼主
paragon1688
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-2-11
结帖率:0
已结贴  问题点数:20 回复次数:9 
简单数组简化问题
#include<stdio.h>
#include<stdlib.h>
void main()
{
    int i,a[3],b[3],num[3];
    printf("请输入三组数:\n");
    for(i=0;i<3;i++)
    {
        scanf("%d %d",&a[i],&b[i]);
        num[i]=a[i]*b[i];
    }
    printf("Sum=%d %d %d\n",num[i-3],num[i-2],num[i-1]);
    system("pause");
}

这是我写的一个数组程式。
两个分别有三个容量的数组,分别输出三组数,分别求每组数的乘积,最后显现出来。
现在我在想:printf("Sum=%d %d %d\n",num[i-3],num[i-2],num[i-1]); 能否只写一个sum=%d就能输出所有每组数的乘积?
如果不行的话,假如以后数组变成n了,那岂不是得从num[i-n]一直写到num[i-1]?
大家有什么简化的方法吗?
谢谢各位
搜索更多相关主题的帖子: void include system 
2012-02-11 05:27
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
得分:3 
用for循环输出。
2012-02-11 08:41
ljl123970
Rank: 2
等 级:论坛游民
帖 子:31
专家分:42
注 册:2012-1-30
得分:3 
2楼
我也是这么想的
既然你用for循环输入,也可以用for循环输出啊

#include<stdio.h>
#include<stdlib.h>
void main()
{
    int i,a[3],b[3],num[3];
    printf("请输入三组数:\n");
    for(i=0;i<3;i++)
    {
        scanf("%d %d",&a[i],&b[i]);
        num[i]=a[i]*b[i];
    }
    for(;i>=0;i--)
    printf("Sum=%d\n",num[i]);
    system("pause");
}

2012-02-11 08:47
墨清扬
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:294
专家分:817
注 册:2011-10-4
得分:3 
对啊,循环输出嘛……

酱油实习生
2012-02-11 09:15
fahfuq
Rank: 2
等 级:论坛游民
帖 子:30
专家分:23
注 册:2012-1-21
得分:3 
飘过
2012-02-11 09:26
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
得分:3 
以下是引用ljl123970在2012-2-11 08:47:17的发言:

2楼
我也是这么想的
既然你用for循环输入,也可以用for循环输出啊

#include
#include
void main()
{
    int i,a[3],b[3],num[3];
    printf("请输入三组数:\n");
    for(i=0;i<3;i++)
    {
        scanf("%d %d",&a,&b);
        num=a*b;
    }
    for(;i>=0;i--)
    printf("Sum=%d\n",num);
    system("pause");
}
有点问题,检查下。

梅尚程荀
马谭杨奚







                                                       
2012-02-11 11:25
ljl123970
Rank: 2
等 级:论坛游民
帖 子:31
专家分:42
注 册:2012-1-30
得分:0 
回复 6楼 有容就大
想当然了,用VC试了下问题好大。

更改:   
程序代码:
#include<stdio.h>
#include<stdlib.h>
void main()
{
    int i,j,a[3],b[3],num[3];
    printf("请输入三组数:\n");
    for(i=0;i<3;i++)
    {
        scanf("%d %d",&a[i],&b[i]);
        num[i]=a[i]*b[i];
    }
    for(j=0;j<i;j++)
    printf("Sum=%d\n",num[j]);
    system("pause");
}








2012-02-11 16:08
静心听那雨
Rank: 1
等 级:新手上路
帖 子:5
专家分:2
注 册:2012-2-10
得分:3 
楼上的代码不错,新手学习啦.
2012-02-11 20:03
chenliangjs
Rank: 2
等 级:论坛游民
帖 子:34
专家分:89
注 册:2012-1-14
得分:3 
呵呵。。。知道用循环输入怎么就想不到用循环输出呢???
2012-02-11 20:41
爱德华
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:183
专家分:536
注 册:2011-5-29
得分:3 
    lz想法不错  但对于循环语句还不是很敏感~~

算法,数据结构,windows核心编程.
2012-02-15 00:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-360718-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.190807 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved