Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
787 connectés 

  FORUM HardWare.fr
  Programmation
  C

  exercice pointeur et fonction langage C

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

exercice pointeur et fonction langage C

n°1871473
franck019
Posté le 09-04-2009 à 12:37:18  profilanswer
 

Bonjour,
s'il vous plais pouvais vous résoudre cette exercice
Exercice Sur Les Pointeurs et les Fonction
écrire une procédure "permute" qui permet de permuter les valeurs de deux variables entières et écrire un programme dans lequel on saisira deux nombres entiers avant de faire appel a cette procédure et d'afficher le contenue de ces variable afin de vérifier la permutation
Voici ma solution mais j'arrive pas a compiler
 
/*permutation*/
#include<stdio.h>;
#include<conio.h>;
void permute(int *x,int *y){
int val;
val=*x;
*x=*y;
*y=val;
}
void main(){
int a;int b;
clrscr();
scanf("%d%d,&a,&b);
permute(a,b);
printf("a=%d,b=%d",a,b);
do{}
while(kbhit()==0);
}

mood
Publicité
Posté le 09-04-2009 à 12:37:18  profilanswer
 

n°1871482
Joel F
Real men use unique_ptr
Posté le 09-04-2009 à 12:53:59  profilanswer
 

permute( &a, &b );
 
tu passe une adresse pas une valeur.
 
Apres conio, clrscr et scanf donne envie de vomir

n°1871485
Trap D
Posté le 09-04-2009 à 13:25:33  profilanswer
 

Joel F a écrit :

permute( &a, &b );
 
tu passe une adresse pas une valeur.
 
Apres conio, clrscr et scanf donne envie de vomir


Bah, c'est un débutant.
Tu aurais pu aussi remarquer le prototype de main, les ; après les #include

Code :
  1. /*permutation*/
  2. #include<stdio.h>
  3. #include<conio.h>
  4. void permute(int *x,int *y)
  5. {
  6.   int val;
  7.   val=*x;
  8.   *x=*y;
  9.   *y=val;
  10. }
  11. int main(void)
  12. {
  13.   int a;
  14.   int b;
  15.   clrscr();
  16.   scanf("%d%d,&a,&b);
  17.   permute(&a,&b);
  18.   printf("a=%d,b=%d",a,b);
  19.   do{}
  20.   while(kbhit()==0);
  21.   return 0;
  22. }

n°1871547
Joel F
Real men use unique_ptr
Posté le 09-04-2009 à 14:25:15  profilanswer
 

Trap D a écrit :


Bah, c'est un débutant.


je pense surtout qu'il a un prof de C incompétent :/

n°1871652
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-04-2009 à 16:15:15  profilanswer
 

Trap D a écrit :


Bah, c'est un débutant.
Tu aurais pu aussi remarquer le prototype de main, les ; après les #include


Ceci suffit :

Code :
  1. /*permutation*/
  2. #include <stdio.h>
  3. void permute (int *x, int *y)
  4. {
  5.    int val = *x;
  6.    *x = *y;
  7.    *y = val;
  8. }
  9. int main (void)
  10. {
  11.    int a;
  12.    int b;
  13.    if (scanf ("%d%d", &a, &b) == 2)
  14.    {
  15.       printf ("a = %d, b = %d\n", a, b);
  16.       permute (&a, &b);
  17.       printf ("a = %d, b = %d\n", a, b);
  18.    }
  19.    return 0;
  20. }


Message édité par Emmanuel Delahaye le 09-04-2009 à 16:16:22

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1871789
jesus_chri​st
votre nouveau dieu
Posté le 09-04-2009 à 21:58:02  profilanswer
 

Joel F a écrit :


je pense surtout qu'il a un prof de C incompétent :/


+1
J'ai rarement vu des cours de C de niveau inférieur à DESS (Master 2 maintenant) qui était à la norme, 89 ou 99.
Les grands classiques c'est :

  • void main
  • pause() ou équivalent pour bloquer le programme à la fin à la place d'un breakpoint
  • clear() ou clrscr() pour effacer la console.
  • 1 à la place de stdout. C'est POSIX, mais pas standard. Idem write au lieu de fwrite etc.
  • Les closures et les fonctions locales (c'est juste une extention de gcc). Dangereux car ni le C ni le C++ ne sont des langages prévus pour supporter ça. C'est pas un des paradigmes du langage. Vu surtout chez les profs qui enseignent des langages fonctionnels, genre caml.
  • Les lectures/écritures fichiers controllées par des feof(). Erreur classique en C. feof est une fonction pour auditer une erreur, pas pour la detecter.
  • fflush( stdin ); fflush ne marche que pour les flux de sortie, sur un flux d'entrée c'est undefined.

n°1871790
Trap D
Posté le 09-04-2009 à 21:59:56  profilanswer
 

Je corrigeais simplement ses erreurs, je n'essayais pas d'améliorer son code.

n°1871895
franck019
Posté le 10-04-2009 à 10:39:13  profilanswer
 

merci a vous tous et ce qui concerne le prof vous avez raison je suis en 3 ème année géophysique ingénieura et j'ai un prof spécialiser on physique qui nous fait des cour de programmation langage c :)

n°1871944
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 10-04-2009 à 11:52:29  profilanswer
 

Bon, je lui avais collé un ban d'un mois, mais vu que c'est le 4eme topic que je ferme pour violation à la règle 0D, je prolonge la sanction de façon substantielle


---------------
J'ai un string dans l'array (Paris Hilton)

Aller à :
  FORUM HardWare.fr
  Programmation
  C

  exercice pointeur et fonction langage C

 

Sujets relatifs
C++ et pointeurs, problème pour désalouer...Probleme de syntaxe pour envoyer une chaine vers une fonction javascri
[C] Initialisation d'un tableau constant[Resolu]Firefox Fonction Javascript replace fonctionne pas
[C] Parser un fichier texte[C - librairie Gtk] mettre en place une GtkListStore
Problème avec allocation dynamique de tableau (C) 
Plus de sujets relatifs à : exercice pointeur et fonction langage C


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR