Vistas de página en total

miércoles, 29 de enero de 2014

Programación android con CCTools y C-pc18

Pc18-Programa con arreglo de caracteres y
archivos.























#include<stdio.h>
#include<string.h>
char tema[100];
char desc[500];
void inic(void){
int t;
  for(t=0;t<100;t++){
    tema[t]='\0';
  }
  for(t=0;t<500;t++){
    desc[t]='\0';
  }
}    
void introducir(void){
int r;
char t1[100];
char t2[200]; 
  for(r=0;r<5;r++){
    if(!tema[r*20]) break;
  }
  if(r==5){
    printf("Lista de temas completa...");
  }else
    printf("Reg: %d\n",r);
    puts("\nIntroduce tema, max. 20 caracteres: ");
    gets(t1);   
    if(strlen(t1)>20){
    printf("\nTema %d > 20 caracteres...\n",strlen(t1));
    printf("Repite 1.Introducir Tema...\n");    
    }else{
    strcpy(&tema[r*20],t1); 
      //gets(&tema[r*20]);
      puts("\nIntroduce desc, max 100 caracteres: ");
      gets(t2);      
      if(strlen(t2)>100){
      printf("\nDescripción %d > 100 caracteres...\n",strlen(t2));
      printf("Repite 1.Introducir Tema...\n");
      tema[r*20] = '\0';
      }else{
      strcpy(&desc[r*100],t2);
      }
    }  
  }
}
int encontrar(){
char s[20];
int r;
  printf("Introduce tema:\n");
  gets(s);
  for(r=0;r<5;r++){
    if(!strcmp(s,&tema[r*20])) break;
  }
  if(r==5){
    printf("tema no esta...\n");
    return(-1);
  }
  return r;   
}
 
void desplegar(int nt){
//int nt;
  printf("\nTema:%s \nDescripción: %s\n",&tema[nt*20],&desc[nt*100]);
}
void actualizar(int nt){
int r;
char t1[100];
char t2[200];
  r = nt;
  printf("Reg: %d\n",r);
  puts("\nIntroduce tema, max. 20 caracteres: ");
  gets(t1);   
  if(strlen(t1)>20){
  printf("\nTema %d > 20 caracteres...\n",strlen(t1));
  printf("Repite 1.Introducir Tema...\n");
  }else{
    strcpy(&tema[r*20],t1); 
    puts("\nIntroduce desc, max 100 caracteres: ");
    gets(t2);      
    if(strlen(t2)>100){
    printf("\nDescripción %d > 100 caracteres...\n",strlen(t2));
    printf("Repite 1.Introducir Tema...\n");
    tema[r*20] = '\0';
    }else{
    strcpy(&desc[r*100],t2);
    }
  }     
}
void eliminar(int nt){
  tema[nt*20] = '\0';
  desc[nt*100] = '\0';
  puts("Tema y Descripción eliminados: "); 
}
void listar(void){
int r;
  for(r=0;r<5;r++){
    printf("\nTema:%s \nDescripción: %s\n",&tema[r*20],&desc[r*100]);
  }
}

void guardar(void){
int i;
FILE *fp;
if((fp=fopen("temas.txt","w")) == 0){
puts("No se puede abrir temas");
}else{
  for(i=0;i<100;i++){
  putc(tema[i],fp);
  }
  for(i=0;i<500;i++){
  putc(desc[i],fp);
  }
  fclose(fp);
}
}
void recuperar(void){
int i;
FILE *fp;
if((fp=fopen("temas.txt","r")) == 0){
puts("No se puede abrir temas");
}else{
  puts("Recuperando Tema...\n");
  for(i=0;i<100;i++){
  tema[i] = getc(fp);
  }
  puts("Recuperando Desc...");
  for(i=0;i<500;i++){
  desc[i] = getc(fp);
  }
  fclose(fp);
}
}
int main(void){
char ca;
int nt;
inic();
//introducir(); 
  do{
  printf("\n\t\tMENU");
  printf("\n1.Introducir Tema\n");
  printf("2.Desplegar Tema\n");
  printf("3.Actualizar Tema\n");
  printf("4.Eliminar Tema\n");
  printf("5.Listar Temas\n");
  printf("6.Guardar Temas\n");
  printf("7.Recuperar Temas\n");
  printf("8.Terminar \n");
  do{
  printf("Seleccionar Opción: ");
  //ca=getchar();
  gets(&ca);
  }while(ca<'1' || ca>'8');
  printf("\n"); 
  switch(ca){
     case'1':
     introducir();
     //listar();
     break;
     case'2':
     nt=encontrar();
     if(nt!=-1) desplegar(nt);
     break;
     case'3':
     nt=encontrar();
     if(nt!=-1) actualizar(nt); 
     break;
     case'4':
     nt=encontrar();
     if(nt!=-1) eliminar(nt);
     break;
     case'5':
     listar();
     break;
     case'6':
     guardar();
     break;
     case'7':
     recuperar();
     break;
     case'8':
     printf("Fin del programa...");
     return(0);     
  }  
  }while(ca!='8'); 
 
  return(0);
}
  

Programación android con CCTools y C-pc17

Pc17-Programa con arreglo de caracteres 























#include<stdio.h>
#include<string.h>
char tema[100];
char desc[500];

void inic(void){
int t;
  for(t=0;t<100;t++){
    tema[t]='\0';
  }
  for(t=0;t<500;t++){
    desc[t]='\0';
  }
}    

void introducir(void){
int r;
char t1[100];
char t2[200]; 
  for(r=0;r<5;r++){
    if(!tema[r*20]) break;
  }
  if(r==5){
    printf("Lista de temas completa...");
  }else
    printf("Reg: %d\n",r);
    puts("\nIntroduce tema, max. 20 caracteres: ");
    gets(t1);   
    if(strlen(t1)>20){
    printf("\nTema %d > 20 caracteres...\n",strlen(t1));
    printf("Repite 1.Introducir Tema...\n");    
    }else{
    strcpy(&tema[r*20],t1); 
      //gets(&tema[r*20]);
      puts("\nIntroduce desc, max 100 caracteres: ");
      gets(t2);      
      if(strlen(t2)>100){
      printf("\nDescripción %d > 100 caracteres...\n",strlen(t2));
      printf("Repite 1.Introducir Tema...\n");
      tema[r*20] = '\0';
      }else{
      strcpy(&desc[r*100],t2);
      }
    }  
  }
}

int encontrar(){
char s[20];
int r;
  printf("Introduce tema:\n");
  gets(s);
  for(r=0;r<5;r++){
    if(!strcmp(s,&tema[r*20])) break;
  }
  if(r==5){
    printf("tema no esta...\n");
    return(-1);
  }
  return r;   
}
 
void desplegar(int nt){
//int nt;
  printf("\nTema:%s \nDescripción: %s\n",&tema[nt*20],&desc[nt*100]);
}
void actualizar(int nt){
int r;
char t1[100];
char t2[200];
  r = nt;
  printf("Reg: %d\n",r);
  puts("\nIntroduce tema, max. 20 caracteres: ");
  gets(t1);   
  if(strlen(t1)>20){
  printf("\nTema %d > 20 caracteres...\n",strlen(t1));
  printf("Repite 1.Introducir Tema...\n");
  }else{
    strcpy(&tema[r*20],t1); 
    puts("\nIntroduce desc, max 100 caracteres: ");
    gets(t2);      
    if(strlen(t2)>100){
    printf("\nDescripción %d > 100 caracteres...\n",strlen(t2));
    printf("Repite 1.Introducir Tema...\n");
    tema[r*20] = '\0';
    }else{
    strcpy(&desc[r*100],t2);
    }
  }     
}

void eliminar(int nt){
  tema[nt*20] = '\0';
  desc[nt*100] = '\0';
  puts("Tema y Descripción eliminados: "); 
}


void listar(void){
int r;
  for(r=0;r<5;r++){
    printf("\nTema:%s \nDescripción: %s\n",&tema[r*20],&desc[r*100]);
  }
}  

int main(void){
char ca;
int nt;
inic();
//introducir(); 
  do{
  printf("\nMenu: \n");
  printf("\n1.Introducir Tema\n");
  printf("2.Desplegar Tema\n");
  printf("3.Actualizar Tema\n");
  printf("4.Eliminar Tema\n");
  printf("5.Listar Temas\n");
  printf("6.Terminar Tema\n");
  do{
  printf("Seleccionar Opción: ");
  //ca=getchar();
  gets(&ca);
  }while(ca<'1' || ca>'6');
  printf("\n"); 
  switch(ca){
     case'1':
     introducir();
     //listar();
     break;
     case'2':
     nt=encontrar();
     if(nt!=-1) desplegar(nt);
     break;
     case'3':
     nt=encontrar();
     if(nt!=-1) actualizar(nt); 
     break;
     case'4':
     nt=encontrar();
     if(nt!=-1) eliminar(nt);
     break;
     case'5':
     listar();
     break;
     case'6':
     printf("Fin del programa...");
     return(0);     
  }  
  }while(ca!='6'); 
 
  return(0);
}

Programación android con CCTools y C - pc16

Pc16-Arreglo de caracteres y
memoria dinámica 























#include<stdio.h>
#include<stdlib.h>
int main(void){
char nombre[20];
char tema[100];
char desc[200];
int i;
struct xtemas{
char tema1[50];
char desc1[100];
}temasx[2];
  //ESTRUCTURAS Y ARREGLOS DE CARACTERES
 
  //arreglo de caracteres nombre
  printf("\nIntroducir nombre: ");
  gets(nombre);
  printf("Hola %s\n",nombre);
 
  //arreglo de caracteres tema
  printf("\nSolo un tema: \n");
  printf("\nIntroducir tema: ");
  gets(tema);
  printf("Tema %s\n",tema);
 
  //arreglo de caract. tema
  printf("\nVarios temas: \n");
  for(i=0; i<2; i++){
  printf("\nIntroducir tema: ");
  gets(&tema[i*50]);
  }
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",&tema[i*50]);
  }
  //arreglo de caract. tema y desc
  printf("\nVarios temas con descripcion: \n");
  for(i=0; i<2; i++){
  printf("\nIntroducir tema: ");
  gets(&tema[i*50]);
 
  printf("\nIntroducir desc: ");
  gets(&desc[i*100]);
  }
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",&tema[i*50]);
    printf("Desc: %s\n",&desc[i*100]);
  }
  
  //structura de xtemas
  printf("\nVarios temas con descripcion: \n");
  for(i=0; i<2; i++){
  printf("\nIntroducir tema: ");
  gets(temasx[i].tema1);
 
  printf("\nIntroducir desc: ");
  gets(temasx[i].desc1);
  }
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",temasx[i].tema1);
    printf("Desc: %s\n",temasx[i].desc1);
  }
   
  //PUNTEROS Y MEM DINAMICA DE CARACTERES
 
  //Puntero de una variable entera
  int j,*k,l;
  j=23; // j-1024-0023
  k=&j; // k-1028-1024
  l=*k; // l-1032-0023
  printf("\nValor de l= %d\n",l);
 
  //Variable nombre2 como puntero
  char *nombre2;
 
  nombre2 = malloc(10);
  printf("\nIntroducir nombre: ");
  gets(nombre2);
  printf("Hola %s\n",nombre2);
 
   
  //arreglo de caracteres tema2
  char *tema2;
 
  tema2 = malloc(100);
  printf("\nSolo un tema: \n");
  printf("\nIntroducir tema: ");
  gets(tema2);
  printf("Tema %s\n",tema2);
  free(tema2);
  
  //arreglo de caract. tema2
  printf("\nVarios temas: \n");
  tema2 = malloc(100);
  for(i=0; i<2; i++){
  printf("\nIntroducir tema: ");
  gets(&tema2[i*50]);
  }
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",&tema2[i*50]);
  }
  free(tema2);
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",&tema2[i*50]);
  }
 
 
  //arreglo de caract. tema y desc
  //char *tema2;
  char *desc2;
 
  printf("\nVarios temas con descripcion: \n");
  tema2 = malloc(100);
  desc2 = malloc(200);
  for(i=0; i<2; i++){
  printf("\nIntroducir tema: ");
  gets(&tema2[i*50]);
 
  printf("\nIntroducir desc: ");
  gets(&desc2[i*100]);
  }
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",&tema2[i*50]);
    printf("Desc: %s\n",&desc2[i*100]);
  }
  free(tema2);
  free(desc2);
   
 
  //structura de ytemas
 
  struct ytemas{
  char tema2[50];
  char desc2[100];
  };
  struct ytemas *temasy;
  printf("\nVarios temas con descripcion: \n");
  temasy = malloc(300);
  for(i=0; i<2; i++){
  printf("\nIntroducir tema: ");
  gets(temasy[i].tema2);
 
  printf("\nIntroducir desc: ");
  gets(temasy[i].desc2);
  }
 
  printf("\nLista de temas: \n");
  for(i=0; i<2; i++){
    printf("Tema: %s\n",temasy[i].tema2);
    printf("Desc: %s\n",temasy[i].desc2);
  }
  free(temasy);
 
return 0;
}