SoloCodigo
		Programación General => C/C++ => Mensaje iniciado por: Angeljim105 en Viernes  5 de Mayo de 2017, 05:51
		
			
			- 
				Estoy realizando un codigo donde: imprima una cadena de caracteres dentro de un ciclo:
 por ejemplo la salida en pantalla debe imprimir:
 
 //////////////////////////////////////
 
 Nombre
 ombre
 mbre
 bre
 re
 e
 
 ///////////////////////////////////////
 Estoy haciendo un ciclo anidado for pero no logro eliminar el primer caracter  y asi sucesivamente:
 
 El codigo fuente que estoy usando es este: son varias salidas de pantalla pero es la de arriba donde tengo la duda:
 
 // Jimenez Bustillos Angel  // 01220194
 // 20/04/17
 //  Laboratorio 11
 // JBA_L11.C
 
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 
 void menu (void);
 void programa1(void);
 
 
 
 int main (void)
 {
 menu();
 return 0;
 }
 
 
 void menu(void)
 {
 int op;
 
 do{
 system ("cls");
 printf("\nMENU");
 printf("\n1.- Ejemplo cadenas");
 printf("\nESCOGE UNA OPCION.");
 scanf ("%d",&op);
 switch(op)
 {
 case 1: programa1();  break;
 
 
 }
 }while(op != 4);
 }
 
 void programa1(void)
 
 {
 int tam,i,j;
 char NomAlum[30];
 
 system ("cls");
 printf("Dame tu nombre\n");
 fflush(stdin);
 gets(NomAlum);
 printf("\n");
 tam=strlen(NomAlum);
 
 printf("%s Es tu nombre y tiene %d caracteres\n",NomAlum,tam);
 
 printf("\n");
 system("pause");
 printf("\n");
 
 
 for(i=0;i<tam;i++)
 {
 
 printf("%c\n",NomAlum);
 
 }
 printf("\n");
 system("pause");
 printf("\n");
 
 for(i=0;i<tam;i++)
 {
 printf("%c\n",NomAlum[(tam-1)-i]);
 }
 
 printf("\n");
 printf("\n");
 system("pause");
 
 for(i=0;i<tam;i++)
 {
 printf("\n");
 
 
 for(j=0;j<tam;j++)
 {
 
 
 printf("%c",NomAlum[j]);
 
 
 
 
 }
 
 }
 
 printf("\n");
 system("pause");
 printf("\n");
 
 
 for(i=0;i<tam;i++)
 {
 printf("\n");
 
 
 
 for(j=0;j<tam;j++)
 {
 printf("%c",NomAlum[(tam-1)-j]);
 
 
 
 
 }
 
 }
 printf("\n");
 system("pause");
 printf("\n");
 
 
 
 
 }
 
 
- 
				Hola, te dejo un ejemplo de hacerlo de una forma y de otra, quitando al final el primer ejemplo y quitando al principio el otro, prueba a ver por que no he tenido tiempo de probarlo, si puedes usar String hay funciones como SubString que te facilitan la labor, con char me sale así mas o menos, un saludo.
 
 	
 // Ejemplo quitando al final
 
 const char Nombre[30] = "Nombre";
 char Salida[30];
 for(int i=0;i<strlen(Nombre);i++)
 {
 for(int j=0;j<i+1;j++)
 printf("%c", Nombre[j]);
 printf("%c", '\n');
 }
 
 // Ejemplo quitando al principio
 
 int k;
 for(int i=0;i<strlen(Nombre);i++)
 {
 k=0;
 for(int j=i;j<strlen(Nombre);j++)
 Salida[k++] = Nombre[j];
 Salida[k] = '\0';
 printf("%s", Salida);
 printf("%c", '\n');
 }
 
- 
				Gracias me faltaba un poco de logica para resolver el problema lo estoy analizando, muchas gracias por tu tiempo y tu atencio amigo gracias.