蓝桥杯2021年第十二届省赛真题-时间显示(C and C++)

这一篇是个小记,真无语了,看见这个题感觉哇塞好简单的感觉,谁知道栽了,烦死了

蓝桥杯2021年第十二届省赛真题-时间显示(C and C++)_第1张图片

 话不多说,记录一下

C语言

#include
int main()
{
	int a,b,c;
	long long time;//题上说了10的18次方的正整数,所以咋能用int型啊,喂!
	scanf("%lld",&time);//long long是"%lld",啊!交了四次,还理直气壮?
	time=time/1000%(3600*24);
    //这个地方可以说说,常识都不知道,毫秒到秒是1000,咋会是60呢?
    //而且题要读请人家的时间给的可不是一天的,是累计的,所以你要把时间取一天的余啊!
    //除非你后面计算小时的时候 %24喽
	c=time%60;
	b=time%3600/60;
	a=time/3600;
	printf("%02d:%02d:%02d",a,b,c);	
    //笑死了,大二了还不知道"%02d"啥意思,一个入门题硬生生变成难++题
	return 0;
} 

基础没打好哭死 (大一的宝子们一定要好好学习!呜呜呜)

知识点

int     2^31 < 10^9   2^32 <10^9

long long   2^63 < 10^18   2^64 <10^19

时间输出如何表示

1->  %d就是普通的输出

2->  %2d是将数字按宽度为2,采用右对齐方式输出,若数据位数不到2位,则左边补空格

3->  %02d,和%2d差不多,只不过左边补0

4->  %.2d没见过,但从执行效果来看,和%02d一样

C++

除了是刚开始起步,其余的还挺顺利

#include
using namespace std;
int main()
{
	long long time;
	cin>>time;
	time=time/1000;
	int a=time%60;
	int b=time/60%60;
	int c=time/3600%24;
	printf("%02d:%02d:%02d",c,b,a);
	return 0;
}

你可能感兴趣的:(C语言编程,蓝桥杯,职场和发展)