Hola Juan. Antes de tratar de debuggear en concreto lo que tienes programado, unas acotaciones sobre la letra y la filosofía del ejercicio así luego puedes ayudarme a ayudarte mejor.
La idea de este práctico más que los pequeños cambios que puedan haber por el lenguaje C es que empiecen a
modularizar (partir problemas grandes en problemas más pequeños). Si te fijas, la parte
a del ejercicio solicita que armes una funcion verif que "tome como argumentos los 7 dígitos de la cédula como un arreglo de enteros".
Esto quiere decir que esta función debería tener la siguiente declaración de encabezado: int verif( int ced[7]);
Y para llamarla y probar que funciona podrías tener un main parecido a este (si tu cedula fuera por ejemplo 1.234.567:
int main(char argc, char **argv) {
int ced[7] = {1,2,3,4,5,6,7};
int guion;
guion = verif(ced);
printf("guion = %d \n", guion);
}
con ese módulo ensayado y validado podés empezar a preocuparte por la parte b (que es el ejercicio 6 a su vez) de como traducir un entero de varios dígitos en un arreglo que lo represente dígito a dígito. Un comentario mas, en esta la idea no era usar scanf sino los argumentos de linea de comando
(argc argv, podes ver mas en este link por ejemplo)
Un poco la filosofía del curso se guía por los principios de "divide y vencerás" y "Roma no se construyó en un día". Mientras más puedas fragmentar el problema en módulos y probar su funcionamiento por separado más fácil te va a ser llegar a programas más elaborados.