今天写测试,写了两道,运行没问题,后续的题目还没有看。先把前两道的题目和代码贴出来,这里我认为这两道代码还有改进的地方。目前来看代码写的有些冗余。每天会将代码的逻辑理顺,看看能不能写出更简洁的程序。
#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
int dis = 0;
scanf("%d%d", &a, &b);
if (a > b && b > 0)
{
dis = a;
}
else if (b > a && a > 0)
{
dis = b;
}
else if (a < b && b < 0)
{
dis = (-1) * a;
}
else if (b < a && a < 0)
{
dis = (-1) * b;
}
else if (a < 0 && b>0)
{
dis = (-1) * a * 2 + b;
}
else if (a > 0 && b < 0)
{
dis = (-1) * b * 2 + a;
}
else if (a == b)
{
if (a > 0)
dis = a;
else if (a < 0)
dis = (-1) * a;
else
dis = 0;
}
else if (a == 0 && b > 0)
dis = b;
else if (a == 0 && b < 0)
dis = (-1) * b;
else if (b == 0 && a > 0)
dis = a;
else if (b == 0 && a < 0)
dis = (-1) * a;
printf("%d", dis);
return 0;
}
#include<stdio.h>
int main()
{
int s = 0;
int v = 0;
int hour = 0;
int mie = 0;
int hours = 0;
int mint = 0;//之后需要判断其是否为整数
scanf("%d%d", &s, &v);
if (s % v == 0)
{
mint = s / v+10;
}
else if (s % v != 0)
mint = (s / v) + 1+10;//需要多少分钟
if (mint > 60)
{
hour = (mint) / 60;
if (mint % 60 != 0)
{
mie = (mint) % 60;
if (8 - hour > 0)//时针 补0
{
if (60 - mie > 9)
printf("0%d:%d", 8 - 1 - hour, 60 - mie);
else
printf("0%d:0%d", 8 - 1 - hour, 60 - mie);
}
else if (8 - hour == 0)
{
if (60 - mie > 9)
printf("00:%d", 60 - mie);
else
printf("00:0%d", 60 - mie);
}
else if (8 - hour < 0)
{
hours = hour - 8;
if (24 - hours > 9)
{
if (60 - mie > 9)
printf("%d:%d", 24-1-hours, 60 - mie);
else
printf("%d:0%d", 24 - 1 - hours, 60 - mie);
}
else if (24 - hour <= 9)
{
if (60 - mie > 9)
printf("%0d:%d", 24 - 1 - hours, 60 - mie);
else
printf("%0d:0%d", 24 - 1 - hours, 60 - mie);
}
}
}
else if (mint % 60 == 0)
{
printf("0%d:00", 8 - 1 - hour);
}
}
else if (mint == 60)
{
printf("07:00");
}
else if (mint < 60)
{
if (60 - mint > 9)
printf("07:%d", 60 - mint);
else
printf("07:0%d", 60 - mint);
}
return 0;
}