So I went looking for this the other day because my friend and I were debating it. We kept going back and forth about whether he was in his final year at Durmstrang or if he was a bit younger. After checking the book, Viktor Krum is described as being in his seventh and final year at the school. Durmstrang students, like those at Hogwarts, start at age 11, so that puts him at 17 or 18 during the Triwizard Tournament.
What's interesting is that Rowling never gives a specific birthdate for him, unlike some other characters. The Goblet of Fire itself had an Age Line set by Dumbledore to prevent anyone under seventeen from entering. Since Krum was a champion, he had to be seventeen or older at the start of the school year in September. It's safe to assume he was 18 during the actual tasks, making him the oldest of the three male champions. Cedric and Harry were both 17, and Fleur's age isn't specified but she's likely around the same as Krum.
I always found it a bit funny that someone of his age and international Quidditch fame was still considered a student. He must have been under a lot of pressure, balancing his studies with being a world-class athlete and then the tournament on top of that. It adds a different layer to his quiet, gruff personality throughout the book.