标题:【编程问题3】
只看楼主
wackyjason
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-8-17
结帖率:66.67%
已结贴  问题点数:10 回复次数:16 
【编程问题3】
呵呵,本人比较笨,问题连连,题目如下:
编写一个程序,该程序要求用户输入一个华氏温度。程序以double类型读入温度值,并将它作为一个参数传递给用户提供的函数Temperatures()。该函数将计算相应的摄氏温度和绝对温度,并以小数点右边有两位数字的精度显示这三种温度。它应该用每个值所代表的温度刻度来标识这3个值。下面是将华氏温度转换成摄氏温度的方程:
  Celsius = 1.8 * Fahrenheit + 32.0
通常用在科学上的绝对温度的刻度是0代表绝对零,是可能温度的下界。下面是将摄氏温度转换为绝对温度的方程式:
  Kelvin = Celsius + 273.16
Temperatures()函数使用const来创建代表该转换里的3个常量的符号。main()函数将使用一个循环来允许用户重复地输入温度,当用户输入q或其他费数字值时,循环结束。

中间遇到问题太多,所以这次甚至一个完整的程序都没有写出来,希望谁能够帮忙解答,谢谢了~
搜索更多相关主题的帖子: 华氏温度 函数 double 方程式 小数点 
2010-08-19 23:27
jack10141
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:陕西西安
等 级:小飞侠
威 望:6
帖 子:706
专家分:2271
注 册:2010-8-10
得分:2 
回复 楼主 wackyjason
你是有了蓝图 没有砖瓦

但是搞建设,砖瓦是必须的!所以,基础还是要你自己去历练的

Coding就像一盒巧克力,你永远不会知道你会遇到什么BUG
别跟我说你是不能的,这让我愤怒,因为这侮辱了你的智慧
2010-08-19 23:35
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
得分:2 
你就试试套那个公式呗~
2010-08-19 23:46
carmeloyin
Rank: 3Rank: 3
来 自:西安
等 级:论坛游侠
帖 子:161
专家分:157
注 册:2008-12-2
得分:2 
我写了个
但是我不会处理循环的问题,不知道怎么输入q可以跳出,只好写了个for(int i=1; ;i++)当死循环···
程序如下:
#include<iostream.h>
class temperatures
{
    double Fahrenheit;
    double Celsius;
    double Kelvin;     
public:
    temperatures(double a)
    {
        Fahrenheit=a;
        Celsius=1.8*Fahrenheit+32.0;
        Kelvin=Celsius+273.16;
    }
    void display()
    {
        cout<<"Fahrenheit:"<<Fahrenheit<<endl;
        cout<<"Celsius:"<<Celsius<<endl;
        cout<<"Kelvin:"<<Kelvin<<endl;
    }
};
void main()
{
    double a;
    for(int i=1; ;i++)
    {
        cout<<"please input Fahrenheit:"<<endl;
        cin>>a;
        temperatures tprt(a);
        tprt.display();
    }
}





[ 本帖最后由 carmeloyin 于 2010-8-20 00:47 编辑 ]
2010-08-20 00:44
xjy080
Rank: 2
等 级:论坛游民
帖 子:55
专家分:78
注 册:2008-9-15
得分:2 
#include<stdio.h>
main()
{
char t;
scanf("%c",&t);
if(t!='!')
 {
  printf("%c",t);
  scanf("%c",&t);      
 }
 getch();
}

可以参考下我的程序
2010-08-20 01:17
xjy080
Rank: 2
等 级:论坛游民
帖 子:55
专家分:78
注 册:2008-9-15
得分:0 
回复 5楼 xjy080
//该程序要求用户输入一个华氏温度。程序以float类型读入温度值,并将它作为一个参数传递给用户提供的函数Temperatures()。该函数将计算相应的摄氏温度和绝对温度,并以小数点右边有两位数字的精度显示这三种温度。它应该用每个值所代表的温度刻度来标识这3个值。下面是将华氏温度转换成摄氏温度的方程:
 // Celsius = 1.8 * Fahrenheit + 32.0
//通常用在科学上的绝对温度的刻度是0代表绝对零,是可能温度的下界。下面是将摄氏温度转换为绝对温度的方程式:
  //Kelvin = Celsius + 273.16
//Temperatures()函数使用const来创建代表该转换里的3个常量的符号。main()函数将使用一个循环来允许用户重复地输入温度,当用户输入q或其他费数字值时,循环结束。

#include<stdio.h>
#include<math.h>

float tempr(float t);
main()
{
 float t=0.0;
 printf("please input temprature,and end up with 100000.0!\n");
 scanf("%f",&t);
 while(fabs(t-100000.0)>1.0e-10)
 {
  printf("t=%f",t);         
  tempr(t);
  scanf("%f",&t);         
  }
  return ;
}
  
float tempr(float t)
  {
  float c,k;
  c=t*1.8+32.0;
  k=c+273.16;
  printf("\tc=%f\tk=%f\n",c,k);     
  }
这个才是!!
2010-08-20 01:19
wackyjason
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-8-17
得分:0 
回复 2楼 jack10141
呵呵,你说的很对,我先去写一个程序再来看回答吧。
2010-08-20 09:33
carmeloyin
Rank: 3Rank: 3
来 自:西安
等 级:论坛游侠
帖 子:161
专家分:157
注 册:2008-12-2
得分:0 
回复 5楼 xjy080
为什么上限是10000啊?题目没有说上限是10000啊,而且你也没有给出循环效果
2010-08-20 13:08
xjy080
Rank: 2
等 级:论坛游民
帖 子:55
专家分:78
注 册:2008-9-15
得分:0 
可以自己改的的啊,我就随便弄了个,可以循环输入吧!
2010-08-20 13:10
wackyjason
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-8-17
得分:0 
回复 2楼 jack10141
程序代码:
#include <stdio.h>
void Temperatures (double fah)
const double F_2_C 1.8
const double C_2_K 273.16
int main (void)
{
    double fah,
    printf ("Enter a number of temperature in Fahrenheit: ");
    scanf ("%f", &fah);
    Temperatures (fah);
    printf ("Done!\n");
    return 0;
}

void Temperatures (double fah)
{
    while (fah=%f){
      cel = fah*F_2_C+32.0;
      kel = cel+C_2_k;
      printf ("The %.2f degree is %.2f centigrade and %.2f k.\n", fah, cel, kel);
      printf ("Enter a number of temperature in Fahrenheit: ");
      scanf ("%f", &fah);
}


这就是我的砖瓦了,只看该如何调整。谢了!
2010-08-20 21:32



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




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

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