转换成最小单位然后再转换回去
#include <stdio.h>
// S = 29K G = 17S
int main()
{
int PG, PS, PK, AG, AS, AK;
int Psum = 0, Asum = 0;
scanf("%d.%d.%d %d.%d.%d", &PG, &PS, &PK, &AG, &AS, &AK);
Psum = (PG * 17 + PS) * 29 + PK;
Asum = (AG * 17 + AS) * 29 + AK;
if(Psum - Asum > 0)
printf("-%d.%d.%d", (Psum - Asum) / (17 * 29), (Psum - Asum) / 29 % 17, (Psum - Asum) % 29);
else
printf("%d.%d.%d", (Asum - Psum) / (17 * 29), (Asum - Psum) / 29 % 17, (Asum - Psum) % 29);
return 0;
}