| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 758 人关注过本帖
标题:text
取消只看楼主 加入收藏
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
结帖率:98.33%
收藏
 问题点数:0 回复次数:2 
text
text


[此贴子已经被作者于2016-4-11 02:14编辑过]

收到的鲜花
  • 林月儿2015-06-05 21:02 送鲜花  49朵   附言:争取更大进步
2015-06-03 18:08
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:0 
回复 2楼 林月儿
看了您的代码,受到了一些启发,我打算又重写了代码,重写后的代码:
程序代码:
#include<stdio.h>

#define ROWS 3
#define COLS 5

void col_arr(double arr[], int n);
void show_arr(int rows, int cols, double arr[rows][cols]);
double aver_cols_arr(const double arr[], int n);
double aver_sum_arr(int rows, int cols, double arr[rows][cols]);
double max_arr(int rows, int cols, double arr[rows][cols]);
int main(void)
{
    double array[ROWS][COLS];
    int row;
  
    for(row=0;row<ROWS;row++)
    {
        printf("请输入数组%d中的%d个元素:\n",row+1,COLS);
        col_arr(array[row],COLS);
    }
    show_arr(ROWS,COLS,array);
    for(row=0;row<ROWS;row++)
    {
        printf("数组%d的平均值是%g\n",row+1,aver_cols_arr(array[row],COLS));
    }  
    printf("3个数组的平均值是:%g\n",aver_sum_arr(ROWS,COLS,array));
    printf("3个数组最大元素是:%g\n",max_arr(ROWS,COLS,array));    

    return 0;
}

void col_arr(double arr[],int n)
{
    int co;
   

    for(co=0;co<n;co++)
    {
        printf("元素%d:",co+1);
        scanf("%lf",&arr[co]);
    }
}

void show_arr(int rows, int cols, double arr[rows][cols])
{
    int ro,co; 

    for(ro=0;ro<rows;ro++)
    {
        for(co=0;co<cols;co++)
        {
            printf("%g  ",arr[ro][co]);
        }
        printf("\n");
    }
}

double aver_cols_arr(const double arr[], int n)
{
    int co;
    double sum=0.0;
  
    for(co=0;co<n;co++)
    {
        sum+=arr[co];
    }

    return sum/n;
}

double aver_sum_arr(int rows, int cols, double arr[rows][cols])
{
    int ro,co;
    double sum=0.0;
   

    for(ro=0;ro<rows;ro++)
    {
        for(co=0;co<cols;co++)
        {
            sum+=arr[ro][co];
        }
    }
  
    return (sum/(rows*cols));
}

double max_arr(int rows, int cols,double arr[rows][cols])
{
    int ro,co;
    double max=arr[0][0];
  
    for(ro=0;ro<rows;ro++)
    {
        for(co=0;co<cols;co++)
        {
            if(max<arr[ro][co])
            {
                max=arr[ro][co];
            }
        }
    }
    return max;
}
难到这就是传说中的VLA





2015-06-04 14:59
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:0 
回复 7楼 林月儿
您的代码风格好节约空间呀~!
2015-06-04 21:36
快速回复:text
数据加载中...
 
   



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

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