IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Programmer en langage C pour débutante ;ô)


Sujet :

C

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 16
    Points : 3
    Points
    3
    Par défaut Programmer en langage C pour débutante ;ô)
    Bonjour, Tous.

    Je ne suis pas revenue depuis fin 2010 et j'aimerais tout reprendre à zéro.

    J'avais commencé par un tutoriel en ligne "pour les nuls" dans lequel j'ai trouver "code:blocks". Je n'arrive plus à le retrouver.

    Je voulais accéder à la "fenêtre noire" comme sous un "dos" afin de commencer mon apprentissage.

    J'ai demandé de l'aide pour apprendre à programmer sous C via cette "fenêtre dos", et des membres du site ont proposé de m'aider. Cependant, je n'y ai pas donné suite, non pas parce que je m'en moquais , mais parce que j'ai du m'occuper de règler des soucis personnels.

    Malgré tout j'ai un projet que je ne veux pas abandonner et pour lequel je dois persévérer dans l'apprentissage du langage C.

    Je sollicite à nouveau de l'aide.

    Parce qu'il faut que j'y arrive.

    D'abord parce que j'aime apprendre de nouvelles choses, parce que je crois en l'amélioration du quotidien de chacun grace à l'outil informatique, parce que c'est ma manière de remercier ceux qui m'ont proposée de l'aide et ceux qui voudront bien m'en proposer et m'en apporter.

    Comme je travaille en journée, je n'ai que la nuit pour apprendre, alors je vous prie de bien vouloir être patients avec moi.

    Je vous remercie pour vos réponses à venir.

    Cordialement,

    C@LyS.

  2. #2
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Salut,

    En ce qui concerne Code::Blocks, tu peux le télécharger ici. Tu trouveras des cours et des didacticiels sur le langage C sur la page dédiée du site : cours et tutoriels pour apprendre le langage C.

    Le C comme premier langage, ce n'est pas un choix facile, car au début, il y a tellement de chose à apprendre: le langage lui-même, algorithmique, bonnes pratique de conception et d'organisation. C'est un langage exigeant. Je recommande habituellement de commencer par Python ou même éventuellement par du C++ haut niveau en utilisant un maximum les types et algorithmes présente dans la bibliothèque standard. Une telle approche permet de se concentrer, dans un premier temps, plus se concentrer sur le problème et sur l'algo, et moins sur les détails du langage.

    Toutefois, j'ai moi-même commencer la programmation avec Pascal puis j'ai découvert le langage C. Aujourd'hui, je programme toujours en C, même si Python est devenu le premier langage que j'utilise professionnellement. On peut donc apprendre la programmation avec C, mais il est bien de savoir à l'avance l'effort que demande ce langage à l'apprenant comme d'ailleurs au programmeur expérimenté.

    Les didacticiels présents sur la page de cours de dvp.com sont d'un excellent niveau et je te les recommande fort. N'hésite pas à revenir sur ce forum pour poser des questions précises sur les problèmes que tu rencontres avec des exemples de code à l'appui.

    En attendant, je te souhaite bien du plaisir dans tes débuts avec ce langage. Avec mes meilleures salutations

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  3. #3
    Malikemal
    Invité(e)
    Par défaut
    Bonjour,

    J'ai moi-même commencé la programmation par le C, et je reviens sur ce qu'a dit Thierry Chapuis, c'est un langage assez compliquée à maitriser pour un premier, je te conseillerais donc quelque chose de plus haut-niveau, tels que le Python justement, ou si tu es intéressé par les jeux vidéo, pourquoi pas du Java même si j'ai l'impression qu'il faut une certaine rigueur pour le comprendre (je ne connais pas ce langage, c'est juste un ressenti ).
    Si tu tiens tout de même a débuter avec le C, je te renvoie dans cette section du site : http://c.developpez.com/cours/?page=lang-c#cours-c

    Et comme la précisé Thierry C., tu peux revenir sur ce Forum si tu as un problème ! Nous te répondrons avec plaisir !

    @+ sur les forums de dvp.com

  4. #4
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Java pour les jeux vidéo?
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  5. #5
    Malikemal
    Invité(e)
    Par défaut
    Pour certains petit jeu, le java est, je pense, plus adapté, mais de toute façon avant de réussir à programmer un jeu vidéo il faudra sûrement apprendre plusieurs la langages (vous suivez ?) Donc je pense que si on veut s'orienter dans le jeu vidéo, il faut commencer par un POO, C++ ou Java pour ne citer qu'eux, et vu que tu apprendras forcément le C++, le Java pour commencer est je pense plus approprié ! Je peux aussi me tromper bien sur ! Qu'en pensez-vous ?

  6. #6
    Membre extrêmement actif
    Avatar de benjani13
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Février 2010
    Messages
    615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant en sécurité

    Informations forums :
    Inscription : Février 2010
    Messages : 615
    Points : 2 824
    Points
    2 824
    Par défaut
    J'ai commencé la programmation par le C, avec les cours de langage C.

    Je sais pas ce que vous en pensez mais ce cours à le mérite d'être vraiment très compréhensible.

  7. #7
    Malikemal
    Invité(e)
    Par défaut
    Je cherche en ce moment justement des exemples de "bonnes pratiques à respecter", j'ai déjà lu le tutoriel sur les bonnes pratiques de codages en C mais je n'ai pas l'habitude de m'arrêter à une idée dictée par une personne ! Donc voila !

    Merci,

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 16
    Points : 3
    Points
    3
    Par défaut
    Bonjour !!!;ô)

    Merci de m'avoir répondue si vite.

    A présent, je vais aller télécharger code::blocks.

    Merci Malikmal de m'avoir proposer de commencer avec du Java. Cependant, je ne souhaite pas créer de jeu vidéo.

    Je n'ai malheureusement jamais entendu parler du Python, Malikmal et Thierry Chapuis. C'est quoi ce reptile ? A quoi sert-il ?

    Cordialement,

    C@LyS.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Le python est un language de prog assez simple a comprendre.
    J'ai moi aussi commencé par apprendre la programmation avec les cours de C.

  10. #10
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Citation Envoyé par Taiki Voir le message
    Le python est un language de prog assez simple a comprendre.
    Simple à comprendre et très efficace dans un contexte d'apprentissage de la programmation. Malgré sa simplicité et son utilisation évidente en situation d'apprentissage, ce n'est pas un jouet et pour autant. La popularité de ce langage est croissante et de nombreuses applications stratégiques sont aujourd'hui programmées en Python.

    Certes, nous sommes sur le forum C, donc pas au bon endroit pour faire la promotion de ce langage. Donc, même si je pense sérieusement que le langage C ne montre pas sont plein potentiel dans un contexte d'apprentissage de la programmation, les tutoriels langage C disponibles sur la page cours de ce site sont très abordables et encouragent des bonnes pratiques de programmation.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  11. #11
    Membre actif Avatar de golden boy
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2010
    Messages : 120
    Points : 230
    Points
    230
    Par défaut
    Programmer avec un langage bas-niveau comme le C implique d'avoir aussi une connaissance sur le fonctionnement de la machine (afin de pouvoir concevoir un programme robuste et stable). Par exemple, il est important d'avoir des connaissances sur les segments de mémoires utilisés par le programme, ce qui peut permettre de prévenir des problèmes des bugs liées aux buffer overflow ou aux stack overflow (dépassement de capacité en mémoire) ou des problèmes de segfault (que tu as peut-être déjà connu avec un scanf() et un oubli du signe '&'). Ces problèmes, tu ne t'en occupes pas pour le moment (et c'est normal, tu es débutante), mais aie conscience que tu dois connaître tout cela si tu veux bien programmer en langage C (tu auras le temps de regarder tout ça en détail quand tu auras les "bases").

    Ce genre de problème bas-niveau peut être ignoré dans un langages de haut-niveau, c'est géré par l'implémentation. C'est la raison pour laquelle on conseilles souvent au débutants de s'en tenir à ce genre de langages afin qu'il se concentrent uniquement sur l'aspect programmation et non sur l'aspect comportement de la machine.
    Mais si tu aimes le C, continue à l'apprendre.

  12. #12
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut
    Bonjour,
    alors python c est :
    - une adresse: http://python.developpez.com, des cours et tutoriels pour apprendre Python : http://python.developpez.com/cours/
    - un langage ou tu n as pas vraiment a te soucier tu type des variables (encore mois de celui des parametre des fonctions)
    - un langage avec une librairie standard a nulle autre pareille.
    - le langage elu de l annee 2010, avec un nombre d utilisateurs toujours grandissant.
    - ...
    - bref, probablement le seul langage avec lequel un débutant peut faire des interfaces graphiques intéressantes au bout d une heure d apprentissage. :mouarf.

    Jette y juste un coup d oeil. http://python.developpez.com/cours/TutoSwinnen/
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  13. #13
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 16
    Points : 3
    Points
    3
    Par défaut
    Bonjour.

    J'ai bien eu tous les messages.

    Taiki, qu'est-ce qu'un "tableau de char en 2D" ?

    Golden Boy, merci de me préciser que je n'aurais pas à me soucier des "détails de taille" tout de suite et merci de m'encourager dans l'apprentissage du C. Cependant, je vais m'acheter un dictionnaire des termes de la programmation en général (ou du C en particulier ?). Je n'ai pas compris tous les termes que tu as utilisés.

    Merci Thierry de m'encourager.

    Je constate également qu'il est difficile d'apprendre tout en restant sur internet.

    Et j'accepte aussi tous les conseils que vous voudrez bien me donner.

    Par contre, je vais passer moins de temps sur internet, tous les soirs et jusqu'à tard dans la nuit, parce que je ne tiens plus le rythme et qu'en journée je fais des erreurs grossières dans mon travail.

    Je pense que dorénavant je ne vais travailler que les week - end sur mon projet : un logiciel éducatif. Je sais qu'il en existe plétores, mais j'en aurais un qui sera adapté à la façon dont je structure ma pensée.

    Et ce, parce que je suis convaincue que l'outil informatique peut améliorer la vie quotidienne.

    Encore merci pour votre aide.

    Cordialement,

    C@LyS.

  14. #14
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    j'adore les livres également, mais je te conseillerais plutôt d'utiliser les tutoriels sur internet, ceux de developpez.com en particulier pour leur qualité, même s'ils sont moins attrayant visuellement. La programmation est un art manuel et tu l'apprendras avant tout en codant toi-même; tant que tu n'as pas maîtrisé une notion, surtout en C, il faut éviter d'aller voir la suivante, ce qu'encourage un livre.

    Par ailleurs je rejoins le conseil de te lancer dans Python, c'est un beau langage, avec lequel il est agréable de coder. Puisque tu as un but précis, Python t'y mèneras peut-être plus rapidement que le C.

  15. #15
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Tout au contraire, pour un apprentissage sérieux en profondeur, je recommande plutôt l'usage d'un bon livre C. Celui écrit par M@teo21 n'est de très loin pas le meilleurs. (Et je n'ai pas pour habitude de dénigrer le travail réaliser par les auteurs de ce site)

    Avec mes meilleures salutations

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  16. #16
    Membre actif Avatar de golden boy
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2010
    Messages : 120
    Points : 230
    Points
    230
    Par défaut
    D'autant plus que le livre t'oblige à ne pas copier/coller le code. Tu dois tout copier, ce qui peut te permettre de mieux mémoriser les mots clés.

  17. #17
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Citation Envoyé par golden boy Voir le message
    D'autant plus que le livre t'oblige à ne pas copier/coller le code. Tu dois tout copier, ce qui peut te permettre de mieux mémoriser les mots clés.
    La plupart des livres de programmation fournissent les codes sources de exemples en téléchargement. On peut en effet se demander si c'est une bonne chose.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  18. #18
    Invité
    Invité(e)
    Par défaut
    Pour un débutant, je maintiens qu'un tutoriel pour apprendre le C est une meilleure idée, puisqu'il permet justement de tester très rapidement ce qu'on lit, et de se concentrer sur la notion en cours. On "n'imagine" pas ce que fera notre code, et l'on confronte directement ce que l'on fait à la réalité, ce qui est nécessaire pour apprendre les bases.
    Ensuite, une fois que l'on a acquis une certaine aisance avec le langage, un livre est nécessaire pour aller plus loin, cette fois-ci pour les raisons mêmes qui me font déconseiller cette méthode à un débutant, car la pratique est un peu moins nécessaire.

    Quelle que soit la méthode choisie elle ne donnera pas de bons résultats si la démarche est mauvaise; un tutoriel sur internet n'est pas forcément la solution de facilité. Je ne sais pas si nous pourrons pousser plus loin le débat avant d'arriver au point où tout le monde s'accorde que cela dépend de chacun

  19. #19
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 16
    Points : 3
    Points
    3
    Par défaut
    Bonjour !

    Et merci pour tous vos conseils.

    Je suis un peu confuse quand au choix du langage.

    J'ai toujours pensé que le c était le moyen le plus sûr d'atteindre mon but.

    Je vais voir de python ou du c lequel me permettra d'atteindre mon but le plus rapidement possible. Je pense y arriver en commençant l'apprentissage des deux langages l'un après l'autre, au début, pour voir lequel des deux je digère le mieux.

    En même temps, je pense être assez sage pour ne pas vouloir griller les étapes de l'apprentissage.

    Cependant, je trouve un livre plus rassurant. Je conçois qu'apprendre en ligne de manière interactive semble plus séduisant, mais il faut faire un voyage entre la fenêtre de programmation et la fenêtre du tutoriel, et je trouve cela un petit peu compliquer pour moi.

    Et il faut bien commencer quelque part.

    Je me lance, et j'espère faire au mieux.

    Encore merci de votre aide.

    Cordialement,

    C@LyS.

  20. #20
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Peux-tu nous en dire plus sur le projet que tu désires réaliser?

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

Discussions similaires

  1. [XL-2010] Langage vba pour débutant ?
    Par willoweiss dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/10/2012, 10h12
  2. Réponses: 4
    Dernier message: 13/08/2005, 10h20
  3. Programme en langage c et asm pour PowerPC
    Par punkybreizh dans le forum Autres architectures
    Réponses: 4
    Dernier message: 07/04/2005, 13h58
  4. [Débutant] Quel langage choisir pour débuter ?
    Par Invité dans le forum Débuter
    Réponses: 15
    Dernier message: 05/07/2004, 22h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo