首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

一程序涉及返回值有关问题。想不明白,

2012-03-21 
一程序涉及返回值问题。。。想不明白,求救!问题:设计一程序,计算奖牌的价格,考虑奖牌纯度100%,金银铜密度分别

一程序涉及返回值问题。。。想不明白,求救!
问题:设计一程序,计算奖牌的价格,考虑奖牌纯度100%,金银铜密度分别为19.3,10.5,8.93,单位质量的价格分别为1324,17.76,0.2211,奖牌体积由半径和厚度决定,奖牌形状一样,体积相同。
要求:程序包括主函数,价格函数,重量函数,体积函数这几部分;
  主函数外的函数类型要求为double型;
  输入时只输入半径和厚度变量,输出时要输出金银铜奖牌分别的价格;
这是一道C语言学习前期的问题。。。本人循环和函数调用学了,数组,指针什么的还没接触,我现在卡在返回值问题上了,体积函数返回值一个,编重量函数的时候返回值需要金银铜三个了。。。怎么办?价格函数的时候也是,求帮忙!!!


[解决办法]

C/C++ code
#include <stdio.h>#define  TYPE  3#define  PI    3.1415926double Value(double w, double p){    return(w * p);                }double Weight(double v, double d){    return(v * d);    }double Volume(double r, double h){    return(PI * r * r * h);    }    main(){    const char *MentalName[TYPE] = {"Gold",                                    "Silver",                                    "Copper"};    const double MentalAttr[TYPE][2] = {{19.3, 1324},                                           {10.5, 17.76},                                           {8.93, 0.2211}};        float Radius[TYPE], Height[TYPE];     double Price[TYPE];    int i;        for(i = 0; i<TYPE; i++)    {        printf("%s:\n", MentalName[i]);        printf("Radius:");        scanf("%f", &Radius[i]);        printf("Height:");        scanf("%f", &Height[i]);        printf("\n");    }    for(i = 0; i<TYPE; i++)       {            Price[i] = Value(Weight(Volume(Radius[i], Height[i]), MentalAttr[i][0]),MentalAttr[i][1]);        printf("The Price of %s is: %f\n", MentalName[i], Price[i]);    }    getchar();    return 0;} 

热点排行