今天写的一个比较难受的C语言。
省流小助手:后面部分都是复制8~18行的,用的vs。
感觉循环语句还能再简洁一点,但还是不太敢尝试goto,循环条件也是写的比较繁琐,还能再提升一步。
最大的不足是形如“7点08分”,“08”只能以“8”的形式输出。
其次就是表示时间时,用了两个整形和手动输入的“;”来表示,应该有可以“:”直接表示时间的函数。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int clock1,clock2,min1,min2,clock3,clock4,min3,min4;
//早操时间开始时间
printf("请分别输入**学院早操开始时间的时与分\n");
scanf("%d%d",&clock1,&min1);
while(clock1>=24||clock1<0||min1>=60||min1< 0)
{
printf("数据错误,请重新输入\n\n");
printf("请分别输入**学院早操开始时间的时与分\n");
scanf("%d%d", &clock1, &min1);
}
//早操结束时间
printf("请分别输入**学院早操结束时间的时与分\n");
scanf("%d%d", &clock3, &min3);
while (clock3 >= 24 || clock3 < 0 || min3 >= 60 || min3 < 0)
{
printf("数据错误,请重新输入\n\n");
printf("请分别输入**学院早操开始时间的时与分\n");
scanf("%d%d", &clock3, &min3);
}
//晚自习开始时间
printf("请分别输入**学院晚自习开始时间的时与分\n");
scanf("%d%d", &clock2, &min2);
while (clock2 >= 24 || clock2 < 0 || min2 >= 60 || min2 < 0)
{
printf("数据错误,请重新输入\n\n");
printf("请分别输入**学院晚自习开始时间的时与分\n");
scanf("%d%d", &clock2, &min2);
}
//晚自习结束时间
printf("请分别输入**学院晚自习结束时间的时与分\n");
scanf("%d%d", &clock4, &min4);
while (clock4 >= 24 || clock4 < 0 || min4 >= 60 || min4 < 0)
{
printf("数据错误,请重新输入\n\n");
printf("请分别输入**学院晚自习结束时间的时与分\n");
scanf("%d%d", &clock4, &min4);
}
printf("**学院早操时间开始于%d时%d分,结束于%d时%d分\n", clock1, min1, clock3, min3);
printf("**学院晚自习时间开始于%d时%d分,结束于%d时%d分\n", clock2, min2,clock4,min4);
return 0;
}