您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> C语言 >> 辅导 >> 正文    
  C趣味程序(二)(02)电阻计算 【注册男护士专用博客】          

C趣味程序(二)(02)电阻计算

www.nanhushi.com     佚名   不详 

1.2.2 电阻计算
    求如下图所示电路中A,B间的等效电阻r


算法分析如下:
    把整个电路分为4级,从左至右逐级递推处理。
    首先注意把电路中的电阻数据按顺序写入数组,最右端电阻在前,以后每级横向电阻在前,竖向电阻在后。第三级没有横向电阻,相应位置置数据0。最后,置两个-1作为数据的终止标志。
    操作时r读入最右端电阻。进入i循环(预置20级),读入data[i],data[i+1]两个电阻,data[i]与右边等效电阻串联,然后与data[i+1]并联,根据电阻计算公式操作:
        r=r+data[i]; r=(r*data[i+1])/(r+data[i+1]);
    当读入的data[i]为负时,即已计算完毕,退出循环等效电阻r
程序代码如下:
#include<stdio.h>
void main()
{
    int i;
    double r;
    double data[]={25,4,13,50,3,0,15,17,31,-1,-1};
    r=data[0];
    for(i=1;i<=20;i+=2)
    {
        if(data[i]<0)
            break;
        r=r+data[i];
        r=(r*data[i+1])/(r+data[i+1]);
    }
    printf("A,B间的等效电阻为:%.3f\n",(r*1000+0.5)/1000);
}
程序运行结果如下:
    A,B间的等效电阻为:11.932

注意:本程序只适用于II形式的电路电阻计算。如果对应位置没有电阻,必须相应补0。同时在程序中循环体内判断data[i]<0 语句应安排在具体计算语句之前。否则将导致计算结果出错。

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目