A primeira coisa importante de reparar nesse problema é que apesar do problema envolver números, os números que podem vir na entrada vão de 1 até 10^100, o que significa que podemos receber números de até 100 dígitos, um valor que definitivamente não cabe em inteiros computacionalmente. Com isso, a categoria do nosso problema nos traz uma dica: para ler esses números, precisamos interpretá-los como strings.
A partir daí, você pode decidir se vai usar mapa ou se vai de alguma forma converter cada dígito para número e usar um vetor. Eu decidi pela segunda ideia, mas isso fica a seu critério.
#include<string.h>#include<stdio.h>intmain(){char V[101];int N, resposta;int leds[10] = {6,2,5,5,4,5,6,3,7,6};scanf("%d\n",&N);for(int i =0; i < N; ++i){scanf("%s",&V); resposta =0;for(int j =0; j <strlen(V); ++j){ resposta += leds[V[j] -'0']; }printf("%d leds\n", resposta); }return0;}