Favor para alguien que tenga compilador de C a mano

godofredo está baneado por "Troll"
Buenas.
Veréis, tengo que presentar unos ejercicios de programas básicos de C.
El caso es que tengo el código ya hecho pero en mi pc no consigo tirar ningún compilador que me rule. He probado 1000 y nada, por eso solo uso el de clase.
Para saber si el código de 3 programas básicos está sin errores me gustaria pasarlo antes por el compilador.
Alguien que fuera tan amable podría pasar estos 3 programas por un compilador y maquillarme un poco algunos corchetes o errores de semántica donde la haya cagado?
Ya digo que son 3 programas de mierda, de apenas unas lineas de codigo.
Lo agradecería un montón.
Así adjuntos los archivos.

Un saludo.

Adjuntos

Puede que no te rule porque está guardado en .aspx, cambia .aspx por .c y prueba a compilar luego.
Como dice ReKoN, si cambias la extensión a .c, gcc no da problemas:

[jorchube@satanic-laptop Desktop]$ gcc -o lol1 GetAttachmenfgt.aspx
GetAttachmenfgt.aspx: file not recognized: File format not recognized
collect2: ld returned 1 exit status

[jorchube@satanic-laptop Desktop]$ gcc -o lol1 GetAttachmenfgt.c
/tmp/ccH28ExO.o: In function `main':
GetAttachmenfgt.c:(.text+0x71): undefined reference to `sacnf'
collect2: ld returned 1 exit status

[jorchube@satanic-laptop Desktop]$ gcc -o lol2 GetAttachment.c
GetAttachment.c:51:9: error: expected declaration specifiers or ‘...’ before string constant
GetAttachment.c:51:2: warning: data definition has no type or storage class
GetAttachment.c:51:2: error: conflicting types for ‘printf’
GetAttachment.c:51:9: note: a parameter list with an ellipsis can’t match an empty parameter name list declaration
GetAttachment.c:52:9: error: expected declaration specifiers or ‘...’ before string constant
GetAttachment.c:52:33: error: expected declaration specifiers or ‘...’ before ‘a’
GetAttachment.c:52:37: error: expected declaration specifiers or ‘...’ before ‘b’
GetAttachment.c:52:41: error: expected declaration specifiers or ‘...’ before ‘c’
GetAttachment.c:52:45: error: expected declaration specifiers or ‘...’ before ‘d’
GetAttachment.c:52:2: warning: data definition has no type or storage class
GetAttachment.c:52:2: error: conflicting types for ‘printf’
GetAttachment.c:52:45: note: a parameter list with an ellipsis can’t match an empty parameter name list declaration
GetAttachment.c:54:2: error: expected identifier or ‘(’ before ‘return’

[jorchube@satanic-laptop Desktop]$ gcc -o lol3 GetAttachmentd.c
GetAttachmentd.c: In function ‘main’:
GetAttachmentd.c:40:2: error: expected ‘;’ before ‘printf’
[jorchube@satanic-laptop Desktop]$


godofredo está baneado por "Troll"
Buenas.
Yo es que he probado a bajar Dev C++ y muchos derivados y les pego mi código, pero cuando le doy a compilar no me hace nada.
En clase tenemos Win98 y el Fortran instalado, que va a la perfección, pero en el WinXP que tengo yo instalado no consigo que me vaya ninguno.

Por ejemplo, en este código veríais algun error o warning?

#include <stdio.h>
int main (void)
{
   

   int a, b, c, d;
   printf("Introduzca los cuatro dígitos \n");
   scanf("%d", &a);
   scanf("%d", &b);
   sacnf("%d", &c);
   sacnf("%d", &d);
   if(a > b)
   {
      a ^= b;
      b ^= a;
      a ^= b;
   }
   if(a > c)
   {
      a ^= c;
      c ^= a;
      a ^= c;
   }
   if(a > d)
   {   
      a ^= d;
      d ^= a;
      a ^= d;
   
   }
   if(b > c)
   {
      b ^= c;
      c ^= b;
      b ^= c;
   }
   if(b > d)
   {
      b ^= d;
      d ^= b;
      b ^= d;
   }
   if (c > d)
   {
      c ^= d;
      d ^= c;
      c ^= d;
    }

   printf("Dígitos odenados de menor a mayor \n");   
   printf("%d <= %d <= %d <= %d", a , b , c , d);
   
   return 0;
}
Fortran? aspx? que esta pasando aqui¿?
godofredo escribió:Buenas.
Yo es que he probado a bajar Dev C++ y muchos derivados y les pego mi código, pero cuando le doy a compilar no me hace nada.
En clase tenemos Win98 y el Fortran instalado, que va a la perfección, pero en el WinXP que tengo yo instalado no consigo que me vaya ninguno.

Por ejemplo, en este código veríais algun error o warning?

#include <stdio.h>
int main (void)
{
   

   int a, b, c, d;
   printf("Introduzca los cuatro dígitos \n");
   scanf("%d", &a);
   scanf("%d", &b);
   sacnf("%d", &c);
   sacnf("%d", &d);
   if(a > b)
   {
      a ^= b;
      b ^= a;
      a ^= b;
   }
   if(a > c)
   {
      a ^= c;
      c ^= a;
      a ^= c;
   }
   if(a > d)
   {   
      a ^= d;
      d ^= a;
      a ^= d;
   
   }
   if(b > c)
   {
      b ^= c;
      c ^= b;
      b ^= c;
   }
   if(b > d)
   {
      b ^= d;
      d ^= b;
      b ^= d;
   }
   if (c > d)
   {
      c ^= d;
      d ^= c;
      c ^= d;
    }

   printf("Dígitos odenados de menor a mayor \n");   
   printf("%d <= %d <= %d <= %d", a , b , c , d);
   
   return 0;
}


Prueba con el Codeblocks que va de escándalo y haz lo que te he dicho, copias el codigo si quieres y lo guardas con la extension .c y luego compilas, no te tiene que dar problemas nunca.
godofredo escribió:Buenas.
Yo es que he probado a bajar Dev C++ y muchos derivados y les pego mi código, pero cuando le doy a compilar no me hace nada.
En clase tenemos Win98 y el Fortran instalado, que va a la perfección, pero en el WinXP que tengo yo instalado no consigo que me vaya ninguno.

Por ejemplo, en este código veríais algun error o warning?

#include <stdio.h>
int main (void)
{
   

   int a, b, c, d;
   printf("Introduzca los cuatro dígitos \n");
   scanf("%d", &a);
   scanf("%d", &b);
   sacnf("%d", &c);
   sacnf("%d", &d);
   if(a > b)
   {
      a ^= b;
      b ^= a;
      a ^= b;
   }
   if(a > c)
   {
      a ^= c;
      c ^= a;
      a ^= c;
   }
   if(a > d)
   {   
      a ^= d;
      d ^= a;
      a ^= d;
   
   }
   if(b > c)
   {
      b ^= c;
      c ^= b;
      b ^= c;
   }
   if(b > d)
   {
      b ^= d;
      d ^= b;
      b ^= d;
   }
   if (c > d)
   {
      c ^= d;
      d ^= c;
      c ^= d;
    }

   printf("Dígitos odenados de menor a mayor \n");   
   printf("%d <= %d <= %d <= %d", a , b , c , d);
   
   return 0;
}


Hombre, por lo pronto, poco vas a introducir con una función llamada "sacnf" :p Por lo demás está perfecto.

Ahora bien, yo lo haría así:

#include <iostream>

int main() {
    long a,b,c;

    std::cout << "Introdueix 3 números que seran ordenats: ";
    std::cin >> a >> b >> c;
    if(a>=b && b>=c) { std::cout << c << " " << b << " " << a << "\n";
    }else if(b>=c && c>=a) { std::cout << a << " " << c << " " << b << "\n";
    }else if(c>=a && a>=b) { std::cout << b << " " << a << " " << c << "\n";
    }else if(a>=c && c>=b) { std::cout << b << " " << c << " " << a << "\n";
    }else if(b>=a && a>=c) { std::cout << c << " " << a << " " << b << "\n";
    }else if(c>=b && b>=a) { std::cout << a << " " << b << " " << c << "\n";
    }

    return 0;
}


PD: Usa Netbeans o Eclipse.
Usando if anidados (if else) es mejor, así el programa no pierde tiempo haciendo comprobaciones innecesarias.
8 respuestas