| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1218 人关注过本帖
标题:一个编程小问题,求助,拜托,急,在线等,大哥们
只看楼主 加入收藏
huangruoxu
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-12-9
收藏
 问题点数:0 回复次数:13 
一个编程小问题,求助,拜托,急,在线等,大哥们
#include "stdio.h"
int main (void)
{
   float gallons;
   int miles,i=0;
   float x,h,z=0;
   
   printf ("Enter the gallons used (-1 to end): ");
   scanf ("%f",&gallons);
   printf ("Enter the miles driven: ");
   scanf ("%d",&miles);
   
   while ( gallons != -1){
      x = miles/gallons;
      z += gallons;
      i += miles;
      
      printf ("The miles/gallons for this tank was %f\n\n\n",x);
      printf ("Enter the gallons used (-1 to end): ");
      scanf ("%f",&gallons);
      printf ("Enter the miles driven: ");
      scanf ("%d",&miles);
      
      
    }
   
    h = i / z;
    printf ("The overall average miles/gallons was %f",h);
   
   
   
   return 0;
  
}
在输入-1时会继续出现"Enter the miles driven: ",怎样才能让程序忽略这个print继续下个语句?各位帮帮忙,谢谢

[[it] 本帖最后由 huangruoxu 于 2008-12-10 11:39 编辑 [/it]]
搜索更多相关主题的帖子: 在线 
2008-12-09 22:30
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
if(gallons==-1)    break/*(continue)*/  ;
2008-12-09 23:19
s水
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2008-12-7
收藏
得分:0 
printf ("Enter the gallons used (-1 to end): ");
   scanf ("%f",&gallons);
   printf ("Enter the miles driven: ");加个/*   printf ("Enter the miles driven: ");*/就可以了啊
这行有用吗?我觉的没用啊
   scanf ("%d",&miles);
2008-12-09 23:26
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
你输入-1时,后面的while语句里的东西都不执行的,有什么意义呢?
PS:如果真要输入-1后,不执行   printf ("Enter the miles driven: ");的话,
可以把它写在while语句里,不知道这样回答LZ满意否?

寡人有疾,寡人好色......
2008-12-09 23:41
guoming1232006
Rank: 2
等 级:新手上路
威 望:4
帖 子:438
专家分:0
注 册:2008-11-20
收藏
得分:0 
也就是:
  printf ("Enter the gallons used (-1 to end): ");
   scanf ("%f",&gallons);
   while ( gallons != -1){
      printf ("Enter the miles driven: ");
   scanf ("%d",&miles);
      x = miles/gallons;
      z += gallons;
      i += miles;

寡人有疾,寡人好色......
2008-12-09 23:44
huangruoxu
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-12-9
收藏
得分:0 
以下是引用s水在2008-12-9 23:26的发言:

printf ("Enter the gallons used (-1 to end): ");
   scanf ("%f",&gallons);
   printf ("Enter the miles driven: ");加个/*   printf ("Enter the miles driven: ");*/就可以了啊
这行有用吗?我觉的没用啊
 ...

不是有用没用,也可以换个格式,但是这个一道题目的要求格式,上面这个程序在while语句中,题目要求输入-1后就直接计算h=i/z,但是我弄出的程序在输入-1后会出现Enter the miles driven: ,想不到怎么解决了,帮帮忙
2008-12-10 11:44
wangyang916
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2008-12-3
收藏
得分:0 
还在吗,我昨天也做这题了,我在while语句的 printf ("Enter the miles driven: ");
      scanf ("%d",&miles);改成了,
if (gallons!=-1){
   printf ("Enter the miles driven: ");
   scanf ("%d",&miles);
}
输入-1之后就不会出现后边的了,但是最后的那个输出所有的平均数那里不对,我一会把我写的程序发过来你看下,别的都对,就是输入-1之后的结果是错误的,整数就对,小数就不对,整的我很郁闷
2008-12-10 13:10
wangyang916
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2008-12-3
收藏
得分:0 
下边是我写的程序,看你的程序跟我写的应该是一道题,就是汽车加油的那个问题吧:
int main ()
{
    int miles;
    int total;
    int counter;
    float gallons;
    float s;
    float average;
    total=0;
    counter=0;
    printf ("Enter the gallons used (-1 to end):");
    scanf ("%f",&gallons);
    printf ("Enter the miles driven:");
    scanf ("%d",&miles);
    s = (float)  miles / gallons;
    printf ("The miles / gallon for this tank was %f\n\n",s);

    while (gallons!=-1)
    {
        counter += gallons;
        total += miles;
        printf ("Enter the gallons used (-1 to end):");
        scanf ("%f",&gallons);
        if (gallons!=-1)
            {
                printf ("Enter the miles driven:");
                  scanf ("%d",&miles);
                  s = (float)  miles / gallons;
                  printf ("The miles / gallon for this tank was %f\n\n",s);
            }
        else   
            {
                average = (float) total / counter;
                printf ("\nThe overall average miles/gallon was %f\n",average);
              }
    }

}
注释我没写,逻辑总是分不清楚,注释写不出来,但是我能明白,就是别人看着累点,不好意思了
2008-12-10 13:12
wangyang916
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2008-12-3
收藏
得分:0 
我重新改了一下,按我说的那个就没问题,能出来结果,完全的正确,我可以肯定,但是我写的程序,那么写那里出问题了,为什么最后的平均值那里就是不对呢,希望有知道的大哥,高手们帮帮忙,看看是哪里出错误了,谢谢大家了!
2008-12-10 13:21
huangruoxu
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-12-9
收藏
得分:0 
楼上的,给个QQ,以后常联系联系,
2008-12-10 13:44
快速回复:一个编程小问题,求助,拜托,急,在线等,大哥们
数据加载中...
 
   



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

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