搜索
查看: 2442|回复: 7
打印 上一主题 下一主题

问题

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-23 12:27:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
8啊哈币
帮忙看看哪错了?



#include <stdio.h>
main()
{        float a,b,c,b1,c1;
        int d;
    printf("请输入小时数:\n");
    scanf("%f",&c);
    ptintf("请输入分钟数:\n");
    scanf("%f",&b);
        printf("请输入秒数:\n");
    scanf("%f",&a);
    b1=b;
    c1=c;
    while(c1>1)
    {        c1=c1-1;
    }   
    while(b1>1)
    {        b1=b1-1;
    }
    if(c1!=0)
    {        b=b+60*c1;
        c=c-c1;
    }
    if(b1!=0)
    {        a=a+60*b1;
        b=b-b1;
    }
    while(a>=60)
    {        a=a-60;
                b=b+1;
    }
    while(b>=60)
    {        b=b-60;
                c=c+1;
    }
    for(d=0;d<a+60*b+60*60*c;d++)
    {        if(a==0&&b!=0)
                {        b=b-1;
                        a=59;
        }
        if(b==0&&c!=0)
                {        c=c-1;
                        b=59;
        }
        printf("还有%f小时%f分钟%f秒\n",c,b,a);
        sleep(1000);
        system("cls");
    }
    for(d=0;d<=10;d++)
                printf("时间到!\a\n");
        getch();                                                       
        return 0;
}

最佳答案

查看完整内容

//倒计时计时器 #include int main() { int c,b,a; printf("请输入小时数:\n"); scanf("%d",&c); printf("请输入分钟数:\n"); scanf("%d",&b); printf("请输入秒数:\n"); scanf("%d",&a); while(c>=0&&b>=0&&a>=0) { if(a==0&&b!=0) { a=60; b--; } if(b==0&&c!=0) { ...
沙发
发表于 2013-2-23 12:27:04 | 只看该作者
//倒计时计时器
#include <stdio.h>
int main()
{      
   int c,b,a;
   printf("请输入小时数:\n");
    scanf("%d",&c);
    printf("请输入分钟数:\n");
    scanf("%d",&b);
    printf("请输入秒数:\n");
    scanf("%d",&a);
while(c>=0&&b>=0&&a>=0)
     {               
         if(a==0&&b!=0)
                {               
                    a=60;
                    b--;
               }
            if(b==0&&c!=0)
                {               
                    b=59;
                    c--;
               }
                                printf("还有%d小时%d分钟%d秒\n",c,b,a);
                                sleep(1000);
                                system("cls");
                a--;
      }   
     printf("时间到!");
     getch();                                                            
     return 0;
}
板凳
发表于 2013-2-27 15:33:23 | 只看该作者
路过顺便学习一下
地板
发表于 2013-3-22 15:06:50 | 只看该作者
本帖最后由 kekegcs 于 2013-3-24 17:30 编辑

第七行,ptintf("请输入分钟数:\n");
printf函数拼写错误

这个程序思路也有点乱,很难直观的看到你的意图,建议你重新理下思路。
我的思路仅供参考:你的意图只是编一个倒计时的计时器(注意不是时钟格式的)
一,申明(int)c,b,a三个整型变量就行了,通过函数scanf()获得时,分,秒的初值.
二,判断(c>=0&&b>=0&&a>=0)条件满足时,执行while循环体,让a(秒)自减。
while(c>=0&&b>=0&&a>=0)
{
         if(a==0&&b!=0)                     //当a==0且b!=0时
          {        a=60;                         //a(秒)赋值60,b(分)减1
                    b--;
           }
        if(b==0&&c!=0)                     //当b==0且c!=0时
         {        
                  b=59;                         //b(分)赋值59,c(时)减1
                  c--;
         }
           a--;                                  //a(秒)减1
}
5#
 楼主| 发表于 2013-3-24 13:31:42 | 只看该作者
[code=Cpp width=740px]#include<stdio.h>
#include<windows.h>
main()
{ float a,b,c,b1,c1;
int d;
printf("请输入小时数:\n");
scanf("%f",&c);
printf("请输入分钟数:\n");
scanf("%f",&b);
printf("请输入秒数:\n");
scanf("%f",&a);
b1=b;
c1=c;
while(c1>1)
{ c1=c1-1;
}
while(b1>1)
{ b1=b1-1;
}
if(c1!=0)
{ b=b+60*c1;
c=c-c1;
}
if(b1!=0)
{ a=a+60*b1;
b=b-b1;
}
while(a>=60)
{ a=a-60;
b=b+1;
}
while(b>=60)
{ b=b-60;
c=c+1;
}

for(d=0;d<a+60*b+60*60*c;d++)
{ if(a==0&&b!=0)
{ b=b-1;
a=59;
}
if(b==0&&c!=0)
{ c=c-1;
b=59;
}

printf("还有%f小时%f分钟%f秒\n",c,b,a);
Sleep(1000);
system("cls");
}
for(d=0;d<=10;d++)
printf("时间到!\a\n");
getch();
return 0;
}
[/code]



我的意图是编一个倒计时的计时器,让计时器实时显示剩余时间
但是剩余时间一直不动
6#
发表于 2013-3-24 17:39:13 | 只看该作者
本帖最后由 kekegcs 于 2013-3-24 17:40 编辑

z.jpg (8.01 KB, 下载次数: 41)

4

4
7#
发表于 2013-3-26 13:04:52 | 只看该作者
kekegcs 发表于 2013-3-24 17:33
//倒计时计时器
#include
int main()

楼上的比楼主的简明了
8#
 楼主| 发表于 2013-3-31 13:01:30 | 只看该作者
谢谢,问题解决了
最佳答案会出现“0小时0分钟70秒”之类的情况
我稍微改了一下
[code=Cpp width=740px]#include <stdio.h>
#include <windows.h>
main()
{
int c,b,a;
printf("请输入小时数:\n");
scanf("%d",&c);
printf("请输入分钟数:\n");
scanf("%d",&b);
printf("请输入秒数:\n");
scanf("%d",&a);
while(a>=60)
{ a=a-60;
b=b+1;
}
while(b>=60)
{ b=b-60;
c=c+1;
}
while(c>=0&&b>=0&&a>=0)
{
if(a==0&&b!=0)
{
a=60;
b--;
}
if(b==0&&c!=0)
{
b=59;
c--;
}
printf("还有%d小时%d分钟%d秒\n",c,b,a);
Sleep(1000);
system("cls");
a--;
}
printf("时间到!");
getch();
return 0;
}
[/code]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表