问题标题: 酷町堂:5565 时间转换(time)

0
0
已解决
卞福睿
卞福睿
中级守护
中级守护

5565   时间转换(time)

经验值:400 时间限制:1000毫秒

经开区2020年信息学竞赛试题

不许抄袭,一旦发现,直接清空经验!

题目描述 Description

时间的表示方法有24小时制和12小时制,无论是哪种,都可以描述成“小时:分钟:秒钟”。现在给出一个24小时制的时间,请你将其转换成12小时制的时间,并输出。

输入描述 Input Description

一个24小时制的时间

输出描述 Output Description

一个12小时制的时间

样例输入 Sample Input

13:30:25

样例输出 Sample Output

01:30:25

数据范围及提示 Data Size & Hint

小时、分钟、秒钟的每个部分都由两位数字构成,不足两位的在前面补0。

#include<bits/stdc++.h>
using namespace std;
int a,b,c;
char d,e;
int main()
{
    cin>>a>>d>>b>>e>>c;
    if(a>12)
    {
        a-=12;
        if(a<10)
        cout<<"0"<<a<<d<<b<<e<<c;
        else
        cout<<a<<d<<b<<e<<c;
    }
    else if(a>=10)
    cout<<a<<d<<b<<e<<c;
    else
    cout<<"0"<<a<<d<<b<<e<<c;
    return 0;
}

请问为什么70分?


0
已采纳
袁瑞琳
袁瑞琳
中级守护
中级守护
scanf("%d:%d:%d",&a,&b,&c);
if(a<=12)
{
    if(a<10)printf("0");
    printf("%d:",a);
    if(b<10)printf("0");
    printf("%d:",b);
    if(c<10)printf("0");
    printf("%d",c);
}
else if(a<24)
{
    a-=12;
    if(a<10)printf("0");
    printf("%d:",a);
    if(b<10)printf("0");
    printf("%d:",b);
    if(c<10)printf("0");
    printf("%d",c);
}
else if(a==24)
{
    a=0;
    if(a<10)printf("0");
    printf("%d:",a);
    if(b<10)printf("0");
    printf("%d:",b);
    if(c<10)printf("0");
    printf("%d",c);
}

 

0
0
武奕楷
武奕楷
新手天翼
新手天翼
if(a>12) a-=12;
if(a<10) cout<<0;
cout<<a<<":";
if(b<10) cout<<0;
cout<<b<<":";
if(c<10) cout<<0;
cout<<c;

a是时,b是分,c是秒

0
0
0
熊智晖
熊智晖
高级天翼
高级天翼

cin>>a>>s;

if(a>12){

a-=12;

if(a<10){

cout<<0;

}

cout<<a<<s;

核心代码

望采纳

我要回答