Grand besoin d'aide avant lundi !

Utilisateur anonyme -  
 adam -
Chers amis,

J'aurais besoin de vos lumières concernant un programme en langage C. Voici les grandes lignes... Lorsque je fais tourner mon programme, un menu s'affiche :

1 --> Introduire le nombre de valeurs
2 --> Saisie des valeurs
3 --> Edition du tableau
4 --> Valeur maximum
5 --> Valeur minimum
6 --> Position de la valeur maximum
7 --> Position de la valeur minimum
8 --> Classement par ordre croissant
9 --> Classement par ordre décroissant
0 --> Quitter

Lorsque j'appuie sur 1, je définis le nombre de valeurs que va contenir mon tableau puis mon tableau apparaît et je peux saisir mes valeurs. Voici mon problème... Ce que je veux faire, une fois mais valeurs entrées, c'est revenir à mon menu. Ainsi l'utilisateur peux choisir une autre fonction dans le menu et ainsi de suite jusqu'a ce que l'utilisateur introduise la valeur 0. J'aurais aussi besoin d'aide pour créer la fonction qui permet de connaître la position de la valeur mini et max.

/************************/
/* Voici la Fonction principal */
/************************/
#include<stdio.h>
#include<conio.h>
#include<alloc.h>
#include<stdlib.h>

#include<D:\TC\1Auto\Ex4\Version2\fct_ex4.h>
#include<D:\TC\1Auto\Ex4\Version2\fct_ex4.c>

void main (void)
{
int choix ;
int n ;
float *p_tab ;

clrscr () ;

choix = menu () ;

switch (choix)
{
case 1 : n = nb_valeur () ;
p_tab = (float*)malloc(n*sizeof(float)) ;
clrscr () ;
saisie (p_tab , n) ;
break ;
}

getch () ;
}

/*******************/
/* Voici mes fonctions */
/*******************/
#include<stdio.h>
#include<conio.h>
#include<D:\TC\1Auto\Ex4\Version2\fct_ex4.h>

/*********************/
/* Affichage du menu */
/*********************/
int menu (void)
{
int choix, x1, y1 ;

printf("Que d‚sirez-vous ?\n") ;
printf("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n\n") ;

printf("1 --> Introduire le nombre de valeurs\n") ;
printf("2 --> Saisie des valeurs\n") ;
printf("3 --> Edition du tableau\n") ;
printf("4 --> Valeur maximum\n") ;
printf("5 --> Valeur minimum\n") ;
printf("6 --> Position de la valeur maximum\n") ;
printf("7 --> Position de la valeur minimum\n") ;
printf("8 --> Classement par ordre croissant\n") ;
printf("9 --> Classement par ordre d‚croissant\n") ;
printf("0 --> Quitter\n\n") ;

printf("Faites votre choix : ") ;
x1 = wherex () ; y1 = wherey () ;

do
{
gotoxy (x1, y1) ;
clreol () ;
scanf ("%d", &choix) ;

} while (choix<0 || choix>9) ;
return choix ;
}

/**********************************/
/* Selection du nombre de valeurs */
/**********************************/
int nb_valeur (void)
{
int N ;
printf("\n\n") ;
printf("Nombre de valeurs que devra contenir votre tableau : ") ;
scanf("%d",&N) ;

return N ;
}

/**********************/
/* Saisie des valeurs */
/**********************/
void saisie (float *p_tab, int n)
{
int x2, y2, i ;
float x ;

printf ("Saisie des valeurs\n") ;
printf ("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n\n") ;

i = 0 ;

printf (" Valeur [%2d] = ",i) ;

x2 = wherex () ; y2 = wherey () ;

for (i = 1 ; i < n ; i++)
{
printf ("\n Valeur [%2d] = ", i ) ;
}
for ( i = 0 ; i < n ; i++ )
{
gotoxy (x2,y2) ;
scanf ("%f", &x) ;
p_tab[i] = x ;
y2++ ;

}
}

/***********************/
/* Edition des valeurs */
/***********************/
void edit (float *p_tab, int n)
{
int i ;

printf ("Edition des valeurs\n") ;
printf ("ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n\n") ;
printf("Vous avez introduit les valeurs suivantes : \n\n") ;

for ( i = 0 ; i < n ; i++ )
{
printf("La valeur en [%2d] est = %.3f \n", i, *(p_tab+i));
}
}

/***********************************/
/* Header File fonction exercice 4 */
/***********************************/
#ifndef fct_ex4.h
#define fct_ex4.h

int menu (void) ;
int nb_valeur (void) ;
void saisie (float *p_tab, int n) ;
void edit (float *p_tab, int n) ;

#endif

1 réponse

adam
 
vous ne pouvez pas revenir en arrière. une fois le tableaux fait, il faut recommencer la même manipulation.
0