rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[C] corrigé.moi.cet.exercice.svp

Posté par rachad, le dimanche 25 décembre 2005 à 16:47:37
slt

j'espere bien que vs me corrigé cette exercice en language c :

#include <stdio.h>
#include <conio.h>

void main ()
{int i=0,n;
char nom[20],prenom[20];
float moy[20];
clrscr();
printf("Donner le nombre des eleves\n");
scanf("%d",&n);
for (i=0;i<n;i++)
{
clrscr();
printf("nom :");
scanf("%s",nom[i]);
printf("prenom :");
scanf("%s",prenom[i]);
printf("note =");
scanf("%f",&moy[i]);
}
for (i=0;i<n;i++)
printf("%s %s %f\n",nom[i],prenom[i],moy[i]);
getch();
}



et merci bcp.
Répondre à rachad  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Manu, le dimanche 25 décembre 2005 à 23:21:17
ca fait longtemps que j'ai pas fait du c en console mais je dirais que le problème vient de scanf("%s",nom[i]); et scanf("%s",nom[i]); :
je ne crois pas que la commande scanf te permette de saisir du texte (et que si tu lui envoie du texte elle renvoie 0)
Il me semble que la commande pour saisir une chaine est gets
Répondre à Manu

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
nicO.2x45, le dimanche 25 décembre 2005 à 23:34:58
Bonsoir Manu !!

SI normalement le %s marche aussi pour les chaines de caractères, mais en effet il vaut mieux utiliser le gets. Par contre, je ne sais plus si le gets se trouve dans la librairie stdio.h ou si il se trouve dans string.h !!! (Et puis je l'avoue, j'ai pas le courage un 25/12 à me replonger illico presto dans mes cours !!! Même si j'adore la prog !!! ;p)

Par contre, Rachad, il est impératif si tu utilise le gets pour enregistrer tes chaines de caractères, que tu places un getchar(), ou un getch(), après chaque scanf, il me semble, sinon tu auras des piti problemes avec !!! :)

Bonne soirée :) nicO.2x45 alias Le_Foudroyeur :)
Répondre à nicO.2x45

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kilian, le lundi 26 décembre 2005 à 04:09:18
Bonjour,

Ce serait bien de nous donner un minimum d'indice sur le problème, sur l'erreur....

Deviner l'énoncé du problème et chercher en quoi il y a une erreur sans la moindre indication, c'est fatiguant, d'autant plus quand il s'agit d'un language qui fait mal à la tête comme le C.

Le soucis est dans les tableaux nom et prenom.
char nom[20],prenom[20]; 

Ce sont des tableaux de caractères que tu as déclaré (ou chaines de caractères) et non pas des tableaux de chaines de caractères comme tu l'aurais voulu je suppose.
Car dans :
scanf("%s",nom[i]); 

Là par exemple tu essaie de mettre une chaine de caractère dans un emplacement réservé à un seul caractère.
En gros dans nom[20] tu ne peux stocker qu'un seul nom.

Mais tu peux déclarer des tableaux de chaines de caractères comme ceci:
char nom[100][20],prenom[100][20]; 

Voilà deux tableaux de 100 chaines caractères pouvant chacune contenir 20 caractères. Ca veut dire que le nombre d'élèves ne devra pas excéder 100, l'idéal serait d'utiliser des tableaux dynamiques, mais comme je ne connais pas ton niveau en C, je ne m'avance pas là-dessus.

Voilà, donc à priori tes scanf fonctionneront bien comme ça en déclarant tes tableaux comme je t'ai montré.
Répondre à kilian

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
nicO.2x45, le lundi 26 décembre 2005 à 13:01:39
Bonjour !!!

Exact, avec ce que j'avais dit, ce ne sera pas un tableau de chaine de caractère (a moins qu'il ne prévois de rentrer qu'un seul mot pour nom et prénom (ce que j'avais pensé)), sinon, pour les tableaux de chaines de caractères, on peut aussi déclarer avec le char**
:) nicO.2x45 alias Le_Foudroyeur :)
Répondre à nicO.2x45

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
doualeh, le mardi 5 décembre 2006 à 17:40:04
salut, moi c doualeh de djibouti et concernant votre exercice , je dirait k'il est juste dans le sens ou on veux simplement afficher le nom,prenomet la note dans un tableau.
si c'est seulement ca le but de ce programme j'opte a dire k'il est juste .

bonne chance .(etudiant en master [analyste programmeur])
Répondre à doualeh

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
naimanaima, le vendredi 12 octobre 2007 à 17:07:08
#include <stdio.h>
#include <stdlib.h>

int main ()
{int i,n;
char nom[20],prenom[20];
float moy[20];

printf("Donner le nombre des eleves\n");
scanf("%d",&n);
for (i=0;i<n;i++)
{

printf("nom :");
scanf("%s",nom[i]);
printf("prenom :");
scanf("%s",prenom[i]);
printf("note =");
scanf("%f",&moy[i]);
}
for (i=0;i<n;i++)
printf("%s %s %f\n",nom[i],prenom[i],moy[i]);
system("pause");return 0;
}
Répondre à naimanaima

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
fanni1234, le mardi 4 décembre 2007 à 14:06:23
tu sais koi il faut mieux d'utiliser une structure ici pour ke tu puisse donner des infos sur une personne sans problemme
comme ex:
struct etudiant{
char nom[20];
char prenom[20];
int moy;
};
mais quand tu vx inserer les infos consernant une personne il faut appler la structure dans le prog comme
#include <stdio.h>
#include <stdlib.h>
struct etudiant
{
char nom[20];
char prenom[20];
float moy; };
void main ()
{int i,n;

etudiant etud;
printf("Donner le nombre des eleves\n");
scanf("%d",&n);
for (i=0;i<n;i++)
{
printf("nom :");
scanf("%s",etud.nom);
printf("prenom :");
scanf("%s",etud.prenom);
printf("note =");
scanf("%f",&etud.moy);
}
for (i=0;i<n;i++)
printf("%s %s %f\n",etud.nom,etud.prenom,etud.moy);
system("pause");
}
Répondre à fanni1234

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
randomize, le samedi 2 février 2008 à 14:19:03
salam mec, c est mohammed maroc! consernant votre exercice je pense qu il faut utiliser les structures, sin non il fau fusioner les deux boucle et enlevé dans scanf les [] et ça va marcher!! mais l affichage des infos va etre paralellement avec l insertion!!!lol
Répondre à randomize

16


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
mahouda, le samedi 15 mars 2008 à 17:38:16
bonjour,
est ce que vous pouvez me m'aider a faire un programme en assembleur de tri croissant
Répondre à mahouda

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
belhauss, le dimanche 3 février 2008 à 00:06:09
mai bon urtilise la fonction gets !!!!
#include <stdio.h>
#include <conio.h>

void main ()
{int i=0,n;
char nom[20],prenom[20];
float moy[20];
clrscr();
printf("Donner le nombre des eleves\n");
scanf("%d",&n);
for (i=0;i<n;i++)
{
clrscr();
printf("nom :");
gets(nom);
printf("prenom :");
gets(prenom);
printf("note =");
scanf("%f",&moy[i]);
}
for (i=0;i<n;i++)
printf("%s %s %f\n",nom,prenom,moy);
getch();
}
Répondre à belhauss

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
etudient, le mardi 12 février 2008 à 19:45:55
Ecrire un programme c permettant de lancer la commande passée en argument
Répondre à etudient

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
fiddy, le mardi 12 février 2008 à 19:48:32
Salut,

Etudiant, tu voudrais pas qu'on fasse ton travail à ta place aussi ?
Cherche un peu et poste tes recherches, et dis nous ce qui te bloque ;)

Cordialement
Google is your friend
Répondre à fiddy

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
abdess111, le dimanche 24 février 2008 à 23:25:23
lt tt le monde
il yas plusieurs erreur dans ce programme
on peu pas saisir une chaine de caractere pas la fonction scanf si nn on fai une boucle.voiala un exemple
for("i=0;i<n;i++)
{printf("saisi un caractere");
scanf("%c",&nom[i]) mais ca marche pas par ce que lutilisateur doit saisi le nom caractere par caractere et cest pas juste
cest pour ca on utilise un pointeur et on aloue lespace illimité pous le nom
voila un exemple:
noublie jamais que si tu utilse les pointeurs il fo appelle un bebloitéq #incluse<stdlib.h> et noublie pas aussi que pour utiliser la fonction gets il fau #include<string.h> voila un exemple
_____________________________
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
char *nom;
nom=malloc(sizeof(char));
printf("saisi votre nom");
gets(nom);
puts(nom);
}
ce programme est bien compilé

puts cest comme printf on peu meme faire
for(i=0;i<n;i++)
{
printf("%c",*(p+i));
}
par ca on va affiché caractere par caractere
alors cest mieux detuliser puts
bon courage pr t le monde
Répondre à abdess111

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ismail, le lundi 10 mars 2008 à 17:04:03
a propo de la declaration int i=0 est fausse car t'es besoin d'incrementé le i
alors on la declaré par int i;

et pour les tableaux tu les declare comme ça par exemple
printf("%s",liste[i].nom) et voila le prbleme a ete resoudre
Répondre à ismail

14


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
ismail, le lundi 10 mars 2008 à 17:04:07
a propo de la declaration int i=0 est fausse car t'es besoin d'incrementé le i
alors on la declaré par int i;

et pour les tableaux tu les declare comme ça par exemple
printf("%s",liste[i].nom) et voila le prbleme a ete resoudre
Répondre à ismail

15


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
lanaine007, le samedi 15 mars 2008 à 16:08:23
soit un triangle abc rectangle en a tel que:
ab=8cm et bc=9cm
A/construire le triangle abc.
B/calculer la longueurAC.On donnera la valeur exacte en cm,puis la valeur approchée arrondie au dixième de cm.
C/Calculer le sinus de l'angla ABC et en déduir une valeur approchée dela mesure de l'angle ABC, arrondie à 0.1°prés.
D/Calculer, en justifiant le calcul, le rayon du cercle circonscrit au triangla ABC.




aider moi!!!!!!!!!!!!
Répondre à lanaine007

17


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
fiddy, le lundi 17 mars 2008 à 13:30:01
Et la politesse ? Bonjour, ..., c'est un luxe ? http://www.commentcamarche.net/ccmguide/ccmcharte respect autrui.php3
Google is your friend
Répondre à fiddy

18


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
audry, le lundi 21 avril 2008 à 19:39:04
// EXERCICE 1
#include<stdio.h>
#include<conio.h>
// FONCTION DE SAISIE
void saisie(int n, int T[])
{
for(int i=0;i<n;i++)
{
scanf("%d",&T[i]);
}
}

// FONCTION DE CALCUL
int calcul(int n, int T[], int a, int b)
{
int p;
p=0;
for(int i=0;i<n;i++)
{
if(T[i]==a && T[i+1]==b)
{
p=p+1;
}
}
return p;
}

// FONCTION PRINCIPALE
int main ()
{
int n,a,b,r,;
printf("entrer taille du tableau= ");
scanf("%d",&n);
int T[n];
saisie(n,T);
printf("entrer la valeur de a et de b,\n");
scanf("%d %d",&a,&b);
r=calcul(n,T,a,b);
}

testé le dit comment faire pour pas que l'ecran disparaisse pendant l'execution
Répondre à audry

19


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 farid87, le dimanche 4 mai 2008 à 19:03:24
salut svp je veut la corraction de cette exo svp en plus tout possible :ecrire le programe assembleur mips r3000 ki permis d afficher les majuscules quand il faut
Répondre à farid87
Logiciels pertinents trouvés dans les téléchargements
Télécharger Anti yeux Rouges 26/05/2004Anti yeux Rouges - Anti Yeux Rouges est un logiciel très simple permettant uniquement de corriger les yeux rouges sur une photo en quelques...Catégorie: Retouche photo
Licence: Freeware/gratuit
Télécharger 2+2 2.1a22+2 - L'apprentissage des maths aux tous petits n'est pas chose facile. 2+2 est un programme destiné à initier les enfants au...Catégorie: Environnement de travail
Licence: Freeware/gratuit
Télécharger Package pédagogique multimédia   4.2.1Package pédagogique multimédia - Package pédagogique multimédia est un cours numérique pour l'initiation en informatique et à la programmation. Les cours...Catégorie: Environnement de travail
Licence: Freeware/gratuit
Télécharger MBSA v2.0.1 MBSA - MBSA est l'abréviation de (Microsoft Baseline Security Analyzer). Ce logiciel vous permet d'analyser votre système...Catégorie: Sécurité
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [C] corrigé.moi.cet.exercice.svp »