时间间隔应该怎么做?

学校oj系统的题目

描述
现在给出一天内的两个时刻,时间间隔是时刻1与时刻2差的绝对值,时刻用时,分和秒表示。
输入n条时刻1和时刻2,统计并独立输出每个时间间隔,单位为秒。

输入格式
第一行输入整数n,之后输入n行,每行输入6个整数:h1,m1,s1,h2,m2和s2,
其中时刻1的时为h1,分为m1,秒为s1,时刻2的时为h2,分为m2,秒为s2。
输入数据保证:1<=n<=1000,0<=h1,h2<24,0<=m1,m2,s1,s2<60,
输出格式
每行输出时间间隔,单位为秒。
输入样例
1
23 45 40 22 50 30
输出样例
3310

输入一直不成功
#include
int main() {
    int n,i;
    int x1,y1,z1,x2,y2,z2,sum1,sum2;
    for(i=0;i<=n;i++){
    scanf("%d\n",&n);
    scanf("%d%d%d%d%d%d\n",&x1,&y1,&z1,&x2,&y2,&z2);
    sum1=x1*3600+y1*60+z1;
    sum2=x2*3600+y2*60+z2;
    printf("%d\n",sum1-sum2);
    }
    return 0;
}
一直只能运行出第一行的数据
想要用循环来搞,但是不成功,应该是打错了(实力不是很好)
想要知道怎么做出来!

回答:代码写的还是很不错的,修改了一下

#include<stdio.h>

int main()
{
    int x1, y1, z1, x2, y2, z2, sum1, sum2;

    scanf_s("%d %d %d %d %d %d", &x1, &y1, &z1, &x2, &y2, &z2);
    sum1 = x1 * 3600 + y1 * 60 + z1;
    sum2 = x2 * 3600 + y2 * 60 + z2;
    printf("%d\n", sum1 - sum2);

    return 0;
}
/*
23 45 40 22 50 30
*/

img

我后来又写了一下,这样我们学校的系统也给过了!


#include <stdio.h>
#include<math.h>
int main(){
    int h1,m1,s1,h2,m2,s2,i,n,c;
    double t1,t2;
    scanf("%d\n",&n);
    for(i=0;i<n;i++){
    scanf("%d %d %d %d %d %d",&h1,&m1,&s1,&h2,&m2,&s2);
    t1=h1*3600+m1*60+s1;
    t2=h2*3600+m2*60+s2;
    c=fabs(t2-t1);
    printf("%d\n",c);
    }
    return 0;
}