#include<stdio.h>
#include<stdlib.h>
int c[61],i,j,x;
FILE *pass;
main()
{
pass=fopen("password.txt", "r");
for (i=1; i<=60; i++)
{
fscanf(pass, "%c", &x);
c[i]=x;
}
for (i=1; i<=60; i++)
{
for (j=48; j<=57; j++)
if (c[i] == j) printf("%c", j);
for (j='a'; j<='z'; j++)
if (c[i] == j) printf("%c", j);
for (j='A'; j<='Z'; j++)
if (c[i] == j) printf("%c", j);
if (c[i] == 'º') printf("%c", 'º');
if (c[i] == 'ª') printf("%c", 'ª');
if (c[i] == '!') printf("%c", '!');
if (c[i] == '|') printf("%c", '|');
if (c[i] == '"') printf("%c", '"');
if (c[i] == '@') printf("%c", '@');
if (c[i] == '·') printf("%c", '·');
if (c[i] == '#') printf("%c", '#');
if (c[i] == '$') printf("%c", '$');
if (c[i] == '%') printf("%c", '%');
if (c[i] == '&') printf("%c", '&');
if (c[i] == '/') printf("%c", '/');
if (c[i] == '(') printf("%c", '(');
if (c[i] == ')') printf("%c", ')');
if (c[i] == '=') printf("%c", '=');
if (c[i] == '?') printf("%c", '?');
if (c[i] == '¿') printf("%c", '¿');
if (c[i] == '¡') printf("%c", '¡');
if (c[i] == '`') printf("%c", '`');
if (c[i] == '^') printf("%c", '^');
if (c[i] == '[') printf("%c", '[');
if (c[i] == '*') printf("%c", '*');
if (c[i] == '+') printf("%c", '+');
if (c[i] == ']') printf("%c", ']');
if (c[i] == '´') printf("%c", '´');
if (c[i] == '¨') printf("%c", '¨');
if (c[i] == '{') printf("%c", '{');
if (c[i] == 'ç') printf("%c", 'ç');
if (c[i] == 'Ç') printf("%c", 'Ç');
if (c[i] == '}') printf("%c", '}');
if (c[i] == '<') printf("%c", '<');
if (c[i] == '>') printf("%c", '>');
if (c[i] == ';') printf("%c", ';');
if (c[i] == ',') printf("%c", ',');
if (c[i] == '.') printf("%c", '.');
if (c[i] == ':') printf("%c", ':');
if (c[i] == '-') printf("%c", '-');
if (c[i] == '_') printf("%c", '_');
if (c[i] == ' ') printf("%c", ' ');
}
printf("\n\n");
system("pause");
return 0;
}
Un saludo.
EL problema es que para comparar carácteres debes usar comillas simples. Te pongo un ejemplo:
if (car =='A') printf ("La letra seleccionada es A.\n");
Por cierto, no uses funciones *scan* cuando puedas evitarlo. Busca algo de fgetchar (), getchar (), fgetc (), etc...
MODF: Borro las dos primeras líneas ya que EI ya ha borrado los mensajes anteriores al mío y ya no tenían significado x
Un saludo. Sagrini
Bueno el codigo tiene varios errores por ejemplo estos:
c=x;
se hace:
c[elemento array]=x;
y estos:
c == j
así:
c[elemento] == j
y tambien una observacion viendo que haces esto:
if (c == '"') printf("%c", '"');
if (c == '@') printf("%c", '@');
if (c == '·') printf("%c", '·');
if (c == '#') printf("%c", '#');
if (c == '$') printf("%c", '$');
if (c == '%') printf("%c", '%');
if (c == '&') printf("%c", '&');
if (c == '/') printf("%c", '/');
la comparacion no es igual me refiero que los operandos no son del mismo tamaño
para ahorrar espacio y rapidez usa un array de tipo BYTE o un unsigned char :)
Gracias por vuestras respuestas. Un saludo.