Langage c

Fermé
léa - 7 nov. 2004 à 22:05
 Jolkdarr - 8 nov. 2004 à 22:26
bonjour tout le monde j'ai un devoir pour mon dut et je n'arrive pas à le faire! pouvez vous m'aider svp!!
SIMULATION DE BILAN D UNE CAISSE ENREGISTREUSE:
1- saisir les renseignements concernant les produits vendus au fur et à mesure des ventes
pour chacun d'eux: le code produit (chaine de 3 car)
la quantité vendue (1 entier)
on s'arretera à la lecture des caractères : XXX pour un code produit qui pourrait être le 1er.
2- afficher le nombre produits différents puis pour chaque produit son code et le cumul des quantités.

présentation des produits dans l'ordre alphabétique des codes produits.
rem: ne prévoir que 15 prod différents au max (limite à observer lors de la saisie au clavier et non à tester par le prog)

et voici ce que j'ai deja fait pouvez vous m aider a dire ce que je dois modifier ou rajouter svp:

#include <stdio.h>
#include <string.h>
typedef char CH3[4];
struct produit
{
CH3 codeproduit;
int quantite;
};

void main ()
{
produit t[15];
CH3 code;
int i,j, nbe=15, ipg;
printf("Saisir un code\n");
gets(code);
if (strcmp(code,"XXX")!=0)
{

do
{//recherche en table
for(i=0; i<nbe && strcmp(code,t[i].codeproduit)!=0;i=i+1);
if (i<nbe)
{//trouvé en table
t[i].quantite=t[i].quantite+1;
}
else
{//non trouvé en table
strcpy(t[i].codeproduit,code);
t[i].quantite=1;
nbe=nbe+1;
}
printf("Saisir un code\n");
gets(code);
}
while (strcmp(code,"XXX")!=0);
for(i=0;i<nbe;i=i+1)
{
ipg=0;
for(j=1; j<nbe; j=j+1)
{
if (t[j].codeproduit>t[ipg].codeproduit)
ipg=j;
}
printf("%d %-3s %d\n", nbe, code, t[ipg].quantite);
t[ipg].quantite=0;
}
}
}
excusez moi de la présentation
merci!!!
léa
A voir également:

3 réponses

bonsoir, c'est encore moi
je tenais à préciser qu il y a une erreur fatale windows qui se lance lorque j'execute le prog???
pourquoi? est ce normal??
je vous en serait reconnaissante
merci d avance
léa
0
Utilisateur anonyme
7 nov. 2004 à 23:28
Bonjour,

dans main:
ecrire struct produit t[15] ;
au lieu de
produit t[15];

warning : remplacer void main() par int main() avec un return 0 à la fin de la fonction.
(selon mon compilateur qui est gcc)

a+
0
moi g visual
et on fait que du c
on a appris qu avec void tu void
merci
léa
0
Utilisateur anonyme
8 nov. 2004 à 11:26
re,

au sujet de la méthode main:

http://www.commentcamarche.net/c/ccarac.php3

a+
0
Hello !

Le tableau t n'est pas initialisé, cela cause des problèmes.
Le tri ne marche pas.
La saisie a des problèmes.

As-tu un debugger ?
Je te conseille de supprimer le tri. Tu le rajouteras à la fin quand ça marcheras mieux.

Build a little, test a little...

A+
0