Red de conocimiento informático - Computadora portátil - Preguntas urgentes sobre programación en lenguaje C, espera en línea, ¡todos puntos extra por las respuestas!

Preguntas urgentes sobre programación en lenguaje C, espera en línea, ¡todos puntos extra por las respuestas!

//Puntos adicionales, he estado trabajando en ello durante mucho tiempo y la depuración fue exitosa

#include

# include

#include

#define MAX_PATH 512

typedef struct _Char //Estructura de letras

{

nombre de char; //nombre de letra

int count; //count

} Char;

void Menu( char *CopyRight) // Menú de bienvenida

{

printf("______________________________________________________________________________\n");

printf(" ");

printf(CopyRight) ;

printf("______________________________________________________________________________\n");

printf(" 1: Problema de ejecución 1\n");

printf(" 2: Ejecutar pregunta 2\n");

printf(" 3: Ejecutar pregunta 3\n");

printf(" 4: Ejecutar pregunta 4\n ");

printf(" 5: Problema de ejecución 5\n");

printf("______________________________________________________________________________\nOpción (otros caracteres para salir del programa):");

}

Pregunta vacía 1(char *cadena, char *usuario)

{

int cnt = 0, i;

for (i= 0; usuario[i]; i++)

{

if ( (usuario[i] >= 'a' && usuario[i] <= 'z') || ( usuario[i] >= 'A' && usuario[i] <= 'Z') )

{

str[cnt++] = usuario[ i];

}

}

str[cnt] = '\0';

printf("\nletra:% s\n", str );

printf("Número de letras: %d\n", cnt);

}

void Pregunta2(char *cadena, char *usuario )

{

int i, cnt = 0;

for (i=0; usuario[i]; i++)

{

>

if (usuario[i] >= '0' && usuario[i] <= '9')

{

str[cnt++] = '$';

str[cnt++] = usuario[i];

}

else

{

str[ cnt++] = usuario[i];

}

}

str[cnt] = '\0';

printf( "El resultado procesado es: %s\n", str);

}

void Initialize(Char *StrChar) //Inicializar estructura

{

int i, j;

for (i=0; i<26; i++)

{

StrChar[i ]. count = 0; //Establece el número en 0

StrChar[i].name = 'a' + i //Asigna un nombre

}

< p; > para (j=0; i<52; i++, j++)

{

StrChar[i].count = 0;

StrChar[i ] .name = 'A'+j;

}

}

Pregunta vacía3(char *cadena, char *usuario)

{

int i, j;

Char StrChar[52];

Inicializar(StrChar); //Inicialización

for ( i=0; usuario[i]; i++)

{

para (j=0; j<52; j++)

{

if (StrChar[j].name == usuario[i]) //Comparación

{

StrChar[j].count++;

romper;

}

}

}

para (i=0; i<26; i++)

{

printf("Letra: %c\t minúscula: %d, mayúscula: %d, total de mayúsculas y minúsculas: %d\n",

StrChar[ i ].nombre, StrChar[i].count, StrChar[i+26].count, StrChar[i].count+StrChar[i+26].count);

}

}

void Question4(char *b, char *a) //Mismo nombre que tu pregunta, a y b

{

int i, cnt = 0;

for (i=0; a[i]; i++)

{

if ( a[i] >= 'a ' && a[i] <= 'z')

{

b[cnt++] = a[i] - 32;

}

else if (a[i] >= 'A' && a[i] <= 'Z')

{

b[cnt++] = a[i ] + 32;

> }

más

{

b[cnt++] = a[i];

}

}

b[cnt] = '\0';

printf("Cadena procesada: %s\n", b);

}

void Question5(char *str, char *user)

{

int i, cnt = 0;

char _char

printf("Ingrese los caracteres que desea eliminar:");

scanf("%c", &_char);

for (i=0 ; usuario[i]; i++)

{

if (usuario[i] != _char)

{

str[ cnt++ ] = usuario[i];

}

}

str[cnt] = '\0';

printf( " La cadena eliminada es: %s\n", str);

}

int main(void)

{

char *CopyRight = "ActSoft Software Studio presenta! Copyright(c)ActSoft 2011. ¡Todos los derechos reservados!\n";

char opt;

char str[MAX_PATH], usuario[MAX_PATH ];

while (1)

{

Menú(CopyRight);

opt = getch();

if (!(opt >= '1' && opt <= '5'))

{

exit(0);

}

printf("\nIngrese una cadena de caracteres:");

gets(user);

switch (opt)

{

case '1':

Question1(str, user); //Solución a la pregunta 1

break;

case '2':

Question2(str, user); //Solución a la pregunta 2

break;

case '3':

Pregunta3(str, usuario); //Solución a la pregunta tres

descanso;

caso '4':

Pregunta4(str , usuario) ; //Solución a la pregunta 4

break;

case '5':

Question5(str, user); //Solución a la pregunta 5

romper;

predeterminado: romper;

}

}

devolver 0;

}