Buenas tardes, me he inscrito en este foro porque estoy en pleno proceso de iniciación al mundo de la programación, tal y como pueden ver en C. Pues bien, en uno de los ejercicios que realizo me he quedado trabado; es el siguiente:
Escribe una función naturales que imprima los n primeros números naturales, cada uno en una línea, y junto a cada uno de ellos un número de caracteres similar, donde dicho carácter viene determinado por un parámetro c. Por ejemplo, si n=5 y c=’*’, la función escribe:
1 *
2 **
3 ***
4 ****
5 *****
Escribe también un programa, utilizando dicha función, que pida al usuario n y c y escriba por pantalla el resultado.
El código que encuentran a continuación es lo que he escrito. El problema se produce después de haber introducido el número y presionado intro, pues no me deja introducir el carácter que quiera, deja un gran espacio en blanco y ahí se queda.
#include <stdio.h>
void naturales (int n, char c);
void naturales (int n, char c){
int count, count2;
for(count=1; count<=n; count++){
printf("%d ", count);
for(count2=1; count2<=count; count2++){
printf("%c", c);
}
printf("\n");
}
}
int main(){
int numero;
char symbol;
printf("Introduzca un numero: ");
scanf("%d",&numero);
printf("Introduzca un caracter: ");
scanf("%c",&symbol);
fflush(stdin);
printf("\n");
naturales(numero, symbol);
return 0;
}
Posiblemente haya un error estúpido, pero no doy con él. Espero que puedan ayudarme.
Saludos, y gracias de antemano.