Hola chicos, disculpen las molestias, me gustaria que me ayudaran con este programa , a la hora de arrojar el resultado se sale >:(
#include <iostream>
#include <stdlib.h>
#include <conio.h>
struct
{
char nombre;
char materias;
int nota_1;
int nota_2;
int nota_3;
} alumno;
void entrada();
void proceso();
void salida();
int i, suma;
int c1,f1,c2,f2;
void entrada()
{
printf("introduzca nombre del alumno");
scanf("%s",& alumno.nombre);
printf("introduzca materias");
scanf("%i",& alumno.materias);
printf("introduzca nota");
scanf("%i",& alumno.nota_1);
printf("introduzca nota");
scanf("%i",& alumno.nota_2);
printf("introduzca nota");
scanf("%i",& alumno.nota_3);
}
void proceso()
{
suma=alumno.nota_1+alumno.nota_2+alumno.nota_3;
}
void salida()
{
if ("suma=>50")
printf("El alumno aprobo");
else ("el alumno reprobo");
}
main ()
{
("int c1, int f1, int c2, int f2")
{
for(c=c1; c<=c2; c++)
{
gotoxy(c,f1); printf("Í");
gotoxy(c,f2); printf("Í");
}
for(f=f1; f<=f2; f++)
{
gotoxy(c1,f); printf("º");
gotoxy(c2,f); printf("º");
}
gotoxy(c1,f1); printf("É");
gotoxy(c1,f2); printf("È");
gotoxy(c2,f1); printf("»");
gotoxy(c2,f2); printf("¼");
textbackground(RED);
textcolor(WHITE);
clrscr();
entrada();
proceso();
salida();
gotoxy(10,10);
system("PAUSE");
return 0;
usa las etiquetas GeSHi para que se vea mejor...
explica que hace, da detalles
que error te da? simplemente finaliza el programa y listo?
no es que sea experto en c pero esto no me suena
main ()
{
("int c1, int f1, int c2, int f2")
{
por otro lado haces
for(c=c1; c<=c2; c++)
pero "c" nunca fue declarado
y aunque lo hubieras declarado c1 no tiene valor
al igual que f1,c2,f2...
dale valores primero antes de pedirles que te den una direccion concreta
el
("int c1, int f1, int c2, int f2")
{
for(c=c1; c<=c2; c++)
{
gotoxy(c,f1); printf("Í");
gotoxy(c,f2); printf("Í");
}
for(f=f1; f<=f2; f++)
{
gotoxy(c1,f); printf("º");
gotoxy(c2,f); printf("º");
}
es un cuadro que me han pasado para colocarlo en el programa, me dijeron que lo colocara dentro del main, cuando voy a compilar dice: expected before '{' token y antes de haberle colocado este codigo de cuadro compilo, decia que introdujera el nombre, nota y estas cosas, pero no da el resultado de si el alumno aprobo o no, solo dice: presione una tecla para continuar y se sale >:( >:( >:( >:( >:( >:( >:( >:( >:( >:(
es que
("int c1, int f1, int c2, int f2")
es una simple cadena, sin pie ni cabeza y toda linea debe terminar en ";" estás abriendo un "{" sin ninguna necesidad
tienes alguna idea que estás haciendo o que quieres? de donde sacaste el codigo? que quieres hacer con el?
Bueno, no soy yo tampoco experto, pero digo un par de cosas chocantes que vi:
pones:
main ()
{...
return 0;
1: No cerraste corchetes.
2: Haces return 0, pero hiciste un main asecas. Prueba con Int main(){}
3: int c1,f1,c2,f2;
Lo declaras 2 veces: Al principio y en la función main.
4:("int c1, int f1, int c2, int f2")
{
Eso sobra. Tampoco cerraste ese corchete.
5:for(c=c1; c<=c2; c++)
No declaraste en ningún momento el valor de esas variables.
En definitiva. Empieza arreglando todo eso xD Cuando acabes, si sigues con problemas, dices.
("int c1, int f1, int c2, int f2")
Lo que querían decir con esto es que declarases esas variables, no que copy&pasteases :xD
Toma, quizás te sirva, no he usado nada de la librería <conio.h>, creo que no hay ningún error en el código, pero por si acaso revisalo...
#include <stdio.h>
int Nombre_Nota_Suma(int Nota_Media); //Funcion que pide las notas del alumno
struct TFicha //Estructura que almacena los datos del alumno
{
char Nombre[30]; //Variable para el nombre del alumno
char Materia[30]; //Variable para la materia
int Notas[3]; //Variables para las 3 notas
};
int main (void)
{
int Resultado = 0; //Le damos un valor inicial
if(Nombre_Nota_Suma(Resultado)>=50)
{
printf("\nEl Alumno ha aprobado!\n");
}
else
{
printf("\nEl Alumno ha suspendido!\n");
}
fflush(stdin);
printf("\nPresiona Intro para finalizar...");
getchar();
}
int Nombre_Nota_Suma(int Nota_Media)
{
struct TFicha Ficha_Alumno;
printf("Introduzca el nombre del Alumno: ");
fgets(Ficha_Alumno.Nombre, 30, stdin);
printf("\nIntroduzca la Materia: ");
fgets(Ficha_Alumno.Materia, 30, stdin);
int n;
for(n=0; n<3; n++)
{
printf("\nIntroduzca la Nota %d: ", n+1);
scanf("%d", &Ficha_Alumno.Notas[n]);
Nota_Media = Ficha_Alumno.Notas[n] + Nota_Media;
}
return Nota_Media;
}
Deberías pasarte por aquí y leerlo http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html)
Saludos