Porque esse programa não mostra o nome completo da pessoa,ou seja ele pula os caracteres no codeblocks,esse programa está certo?Quero que ele mostre o nome completo da pessoa ou conte apenas os 10 caracteres iniciais,como faço isso?
Strings em C devem ter um espaço adicional para o terminador de string. Então se quer que tenha até 10 caracteres, a string deve ter 11 espaços:
char s[11];
Além disso, o problema na verdade está no primeiro scanf, pois se vc digitar mais do que cabe na string, ele “deixa” e pode acontecer qualquer coisa (desde “funcionar” até dar algum erro em tempo de execução).
— Supostamente…, sim, esse programa aparentemente não tem erros!
Talvez ainda não é obvio, porque pulaste ou não leste completamente uma, ou outra definição da função scanf no guia da linguagem de programação c.
E daí?
— Então, uma das consequências de não ler completamente a definição de uma função é observar esse fenômeno; uma falha da lógica: espera pela saída, mas ela não acontece.
*** Sugiro que repita a leitura no guia da linguagem de programação c até o entendimento de cada especificador, ou pelo menos os escritos no código-fonte daquela imagem.