题目说明:
示例代码:
// timeconversion.cpp: 定义控制台应用程序的入口点。
//
// 12-h to 24-h
//
#include "stdafx.h"
#include <windows.h>
#include <sstream>
#include <string>
#include <iostream>
using namespace std;
string timeConversion( string time_12 )
{
string time_temp = "";
int h_time = 0;
//get string of hour
time_temp = time_12;
time_temp.replace( 2, time_temp.length() - 2, "" );
//string to int
stringstream stream( time_temp );
stream >> h_time;
if( time_12.find( "AM" ) != -1 )
{
//del AM
time_12.replace( time_12.length() - 2, 2, "" );
//12:00:00 to 00:00:00
if( h_time == 12 )
time_12.replace( 0, 2, "00" );
}
else if( time_12.find( "PM" ) != -1 )
{
//del PM
time_12.replace( time_12.length() - 2, 2, "" );
//12:00:00 to 12:00:00
if( h_time != 12 )
h_time += 12;
//int to string
stringstream intstream;
intstream << h_time;
intstream >> time_temp;
time_12.replace( 0, 2, time_temp );
}
return time_12;
}
int main()
{
//input format:
//02:00:12AM 12:00:04AM 08:12:13PM 12:13:14PM
string s;
cin >> s;
cout << timeConversion( s ) << endl;
system( "pause" );
return 0;
}
基础知识点:
1、类型转换(string与int互相转换),此处使用c++流的方式
2、string字符串分割、截取等