Autor
|
Tema: leer frase con scanf (Leído 15,834 veces)
|
Fer995
Desconectado
Mensajes: 17
|
como puedo hacer para leer una frase introducida en la consola??
probe con scanf pero solo lee hasta cuando hay un espacio!
muchas gracias!
|
|
« Última modificación: 30 Octubre 2010, 16:24 pm por Littlehorse »
|
En línea
|
|
|
|
ace332
Desconectado
Mensajes: 66
|
Utiliza fgets:
char cadena[100]; fgets(cadena,100,stdin);
Revisa la documentación de la función fgets. Un Saludo
|
|
|
En línea
|
|
|
|
Fer995
Desconectado
Mensajes: 17
|
muchas gracias!
no hay ningun modo de hacerlo con scanf??
|
|
|
En línea
|
|
|
|
klaussius
Desconectado
Mensajes: 10
|
muchas gracias!
no hay ningun modo de hacerlo con scanf??
No, no hay manera de hacerlo así, debes utilizar la biblioteca <string.h>... te dejo un trozo de código que me he encontrado por ahí: #include <stdio.h> #include <string.h>
char completo [80];
char nombre[32] = "Guybrush"; char apellidos [32] = "Threep Wood";
int main(void) { /* Construye el nombre completo */ strcpy ( completo, nombre ); strcat ( completo, " "); strcat ( completo, apellidos );
/* Muestro el nombre al usuario */ printf ( "El nombre completo es %s\n", completo );
/* Pausa hasta que el usuario pulse INTRO */ fflush(stdin); printf ("Pulse INTRO para finalizar..."); getchar(); }
|
|
|
En línea
|
Hazlo o no lo hagas, pero no lo intentes. (Yoda)
|
|
|
taul
Desconectado
Mensajes: 90
|
char frase[1000];
printf("introduce tu frase: "); scanf("%s",frase);
|
|
|
En línea
|
|
|
|
xassiz~
|
char frase[1000];
printf("introduce tu frase: "); scanf("%s",frase);
Incorrecto, os recomiendo que leais esto. Saludos !
|
|
|
En línea
|
|
|
|
Darioxhcx
Desconectado
Mensajes: 2.294
|
para no poner una palabra x una yo hago esto #include <stdio.h> #include <string.h> main () { char frase[100]; int x,y; printf("escribi tu frase: "); gets(frase); y=strlen(frase)-1; for (x=0;x<=y;x++){ printf("%c",frase[x]); } getchar(); }
no se si esta bien o estoy pasando por alto algunos tips como los que escribio litle hace tiempo , pero buee
|
|
|
En línea
|
|
|
|
Fer995
Desconectado
Mensajes: 17
|
gracias por vuestras respuestas me han dado algunas ideas!
|
|
|
En línea
|
|
|
|
3mp3z@ndo
Desconectado
Mensajes: 51
|
También podrías hacerlo de esta forma: #include <stdio.h>
int main(){
char frase[100]; printf( "Escribe una frase:\n"); printf( "\nHas escrito: \%s\n", gets(frase) ); getch(); return 0; } Saludos
|
|
|
En línea
|
|
|
|
Fer995
Desconectado
Mensajes: 17
|
También podrías hacerlo de esta forma: #include <stdio.h>
int main(){
char frase[100]; printf( "Escribe una frase:\n"); printf( "\nHas escrito: [b]\[/b]%s\n", gets(frase) ); getch(); return 0; } Saludos que es lo que hace la barra delante del %s??
|
|
|
En línea
|
|
|
|
|
|