需要帮助修复代码以便它可以编译
Need help fixing code so that it can complie
作为作业的一部分,我必须用 C 编写代码,以在开始时间和持续时间相加时给出结束时间。
例如,"Start time is 1245. Duration is 345. End time is 1630"
这是我的代码:
#include <stdio.h>
void addTime(int start, int duration);
int main()
{
addTime(1045, 345);
addTime(800, 435);
addTime(2300, 300);
}
void addTime(int start, int duration)
if(start + duration > 2400)
{
printf("Start time is %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100))/60)%)/3600)%))));
}
else
{
printf("Start time %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60)%));
}
这是错误信息:
task3.c: In function ‘addTime’:
task3.c:14:1: error: expected declaration specifiers before ‘if’
if(start + duration > 2400)
task3.c:19:1: error: expected declaration specifiers before ‘else’
else
task3.c:22:1: error: expected ‘{’ at end of input
您缺少围绕 addTime
实现的大括号 ({}
):
void addTime(int start, int duration)
{ /* here */
if(start + duration > 2400)
{
printf("Start time is %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100))/60)%)/3600)%))));
}
else
{
printf("Start time %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60)%));
}
} /* and here */
作为作业的一部分,我必须用 C 编写代码,以在开始时间和持续时间相加时给出结束时间。
例如,"Start time is 1245. Duration is 345. End time is 1630"
这是我的代码:
#include <stdio.h>
void addTime(int start, int duration);
int main()
{
addTime(1045, 345);
addTime(800, 435);
addTime(2300, 300);
}
void addTime(int start, int duration)
if(start + duration > 2400)
{
printf("Start time is %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100))/60)%)/3600)%))));
}
else
{
printf("Start time %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60)%));
}
这是错误信息:
task3.c: In function ‘addTime’:
task3.c:14:1: error: expected declaration specifiers before ‘if’
if(start + duration > 2400)
task3.c:19:1: error: expected declaration specifiers before ‘else’
else
task3.c:22:1: error: expected ‘{’ at end of input
您缺少围绕 addTime
实现的大括号 ({}
):
void addTime(int start, int duration)
{ /* here */
if(start + duration > 2400)
{
printf("Start time is %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100))/60)%)/3600)%))));
}
else
{
printf("Start time %d. Duration is %d. End time is %d\n", start, duration, (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60) + (((((60*(start/100))+(((start/100)%)*100)) + ((60*(duration/100))+(((duration/100)%)*100)))/60)%));
}
} /* and here */