Novo curso! Todo programador deveria aprender IA generativa!
Experimente uma aula grƔtis0
como harĆan este programa (solo explicaciones no intento que me lo hagan)
Escribir un programa en lenguaje C que ordene las lĆneas de un texto leĆdo, rodeado por un borde desde la entrada estĆ”ndar, donde cada lĆnea de texto tiene diferentes longitudes, tomando en cuenta que: Debe guardar todas las lĆneas en un arreglo de tipo char grande. Observando que \n marca el fin de cada lĆnea. Guarde los apuntadores en un arreglo diferentes donde cada apuntador apunta al primer carĆ”cter de cada lĆnea. Comparar dos lĆneas usando la funciĆ³n de la biblioteca estĆ”ndar strcmp(). Si dos lĆneas tienen diferentes longitudes rellene con blancos para que tengan el mismo tamaƱo o longitud.
5 Respostas
+ 1
hasta el momento tengo esto
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
#define MAX 1000
void gotoxy (int x,int y){
HANDLE hcon;
hcon=GetStdHandle(STD_OUTPUT_HANDLE);
COORD dwPos;
dwPos.X=x;
dwPos.Y=y;
SetConsoleCursorPosition(hcon,dwPos);
}
void texto ();
int linea (char*);
char arreglo [MAX];
int main(){
int i, j;
char arreglo[MAX];
// Lo usamos para dibujar los bordes.
for(i=2; i<78; i++){
//horizontal superior
gotoxy (i,2); printf("%c",205);
gotoxy(i,23); printf("%c",205);
}
for(j=3;j<23;j++){
//horizontal inferios
gotoxy (2,j); printf("%c",186);
gotoxy (77,j); printf("%c",186);
}
// bordes del marco
gotoxy (2,2); printf("%c",201);
gotoxy (2,23); printf("%c",200);
gotoxy (77,2); printf("%c",187);
gotoxy (77,23); printf("%c",188);
gotoxy (35,5); printf ("Mensaje");
gotoxy(3,8); printf(" ");
scanf("%c",arreglo);
getch();
return 0;
}
+ 1
Su programa tiene comandos de Windows, no funciona en SoloLearn. Funciona solo en entornos Windows ... Publico un ejemplo de muestra de cĆ³mo leer cadenas en una matriz de caracteres y el uso del puntero para esas matrices, funciĆ³n strcmp ... Espero que puedas postularte a tu programa.
#include <stdio.h>
#include <string.h>
int main ()
{
char str1 [20], str2 [20];
fgets (str1,20, stdin); // leyendo una lĆnea de string1
fgets (str2,20, stdin); // leyendo una lĆnea si string2
char * p1 = str1; // asignando a fisrt char a un puntero si str1
char * p2 = str2; // asignando al primer carƔcter de str2 al puntero p2
printf ("% d", strcmp (str1, str2)); // funciĆ³n de comparaciĆ³n de cadenas usando ..
printf ("% c% c", * p1, * p2); // imprimiendo los primeros caracteres de las cadenas por puntero
return 0;
}
Esto es traducido por Google
Copiar pegado, si no funciona en el patio de juegos de cĆ³digo, utilice el siguiente cĆ³digo original
+ 1
Your program has Windows commands, not works in SoloLearn. Works only on Windows environments...
I posting a sample example of how to read strings into charecter array, and pointer use for those array, strcmp function..
Hope you can apply to your program..
#include <stdio.h>
#include<string.h>
int main() {
char str1[20],str2[20];
fgets(str1,20,stdin); //reading a line of string1
fgets(str2,20,stdin); //reading a line if string2
char *p1=str1; //assigning to fisrt char to a pointer if str1
char *p2=str2; //assigning to first char of str2 to pointer p2
printf("%d ", strcmp(str1,str2)); //string compare function using..
printf("%c %c", *p1,*p2); //printing first charecters of strings by pointer
return 0;
}
0
Declarar matriz de caracteres.
Utilice el mĆ©todo fgets (char_array, max_size, source) para leer la lĆnea completa de cadena en char_array.
Use la funciĆ³n strcmp en aquellos que usan bloques in if para mostrar la informaciĆ³n necesaria ...
Solo conozca fgets, strcmp, (matriz de caracteres del puntero que desee, luego tambiƩn asigne memoria para el puntero)
0
Si tiene comando de Windows por el borde si no agregaba la esa librerĆa me aparece mĆŗltiple errores en el programa y gracias ya tengo mas de como hacerlo.