Desenhando um X na tela em C/C++

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

// Declarando a constante TAMANHO e atribuindo valor 18.
#define TAMANHO 18

int main(void) {
    
    /*
    Site: http://programjm.blogspot.com.br/
    Author: João Matheus Santos Assis.
    Creation date: 30/05/2012.
    Last updated: 30/06/2016.
    Description: Este programa exibe uma palavra digitada pelo usuário 
    em forma de X.
    */
    
    
    char elemento[10];
    int recuo = 0;
    
    // Atribuindo um título a janela.
    system("title Desenho"); // Requer o uso da biblioteca "stdlib.h".
    
    printf("\n\t\tDesenhando um X na tela.\n\n");
    
    printf("\tDigite um nome ou numero: ");
    scanf("%s", &elemento);
    
    printf("\n\n\t");
    
    
    /*
    Este bloco de comando realiza a parte operacional do programa, formar um X
    com a entrada do usuário (armazenada na variável elemento). 
    Para formar o desenho, a variável linha e coluna irá variar de 1 até TAMANHO
    (uma constante). Quando linha e coluna tiverem o mesmo valor ou coluna for
    igual a diferença de TAMANHO e recuo, a variável elemento será exibida na 
    tela. Caso contrário, será dado espaços em branco.
    */
    for (int linha = 1; linha <= TAMANHO; linha++) {
        
        for (int coluna = 1; coluna <= TAMANHO; coluna++) {
            
            if (coluna == linha || (coluna == TAMANHO - recuo))
                printf("%s", elemento);
            else
                printf(" ");
            
            if (coluna == TAMANHO) {
                recuo++;
                printf("\n\t");
            }
        }
    }
    
    getch();
    return 0;
}




Inserindo um nome.
Feito no Dev C++ 4.9.9.2 | Executável



Explicação da Lógica utilizada no programa.



Inserindo Letras e Números.
Feito no Dev C++ 4.9.9.2 | Executável



Inserindo Números.
Feito no Dev C++ 4.9.9.2 | Executável



Inserindo Símbolos.
Feito no Dev C++ 4.9.9.2 | Executável



Palavras-Chaves: Desenho, X, Linha, Coluna, Nome, Número, Símbolo, Constante, Estrutura de Seleção, Laço de Repetição, Programação em C/C++.



Artigos relacionados em C/C++: