Informations générales
Volumes horaires
- CM 1.5
- Projet -
- TD 4.0
- Stage -
- TP 12.0
- DS 1.5
Crédits ECTSCrédits ECTS
0.5
Objectif(s)
Cet enseignement a lieu au tout en début de la première année.
Il a été spécialement conçu pour un public hétérogène (programmeur débutant et expérimenté).
Il s'organise autour d'activités avec correction automatique, pour que chacun puisse avance à son rythme, et d'un mini projet en équipe, pour permettre aux élèves de se connaître et de former des groupes de travail multi-provenance.
L'enseignement débute par un cours et un TP de présentation des outils de compilation et de mise au point au moyen d'un dévermineur (debugger).
Ensuite, l'apprentissage des bases du langage C est organisé en exercices de programmation simples, accompagnés de quiz auto-corrigés sous moodle, et de code à trous à compléter.
Les élèves qui découvrent la programmation acquièrent les bases essentielles pour la suite du premier semestre. I
Les élèves plus expérimentés sont encouragés à aider les débutants. Le fait d'être dans la position d'expliquer leur permet de contrôler le degré d'acquisition des bases et de revoir les notions moins bien maîtrisées.
Contenu(s)
Syntaxe et algorithmique de base
- types de base
- fonctions simples
- constructions de base du langage
- tableaux et chaînes de caractères
- algorithmes classiques de parcours de tableaux
- pointeurs (manipulation, gestion de la mémoire, passage en paramètre, arithmétique sur les adresses,...).
- opérateurs bit à bit (implantation d'un ensemble par un bit field)
Mécanismes d'appels et de gestion mémoire du C
- variables locales / globales : portée et durée de vie
- pointeurs et tableaux
- passage d'arguments par valeurs / par référence
- pile d'appels de fonctions et passage de paramètres
aucun
Contrôle des connaissances
100% examen terminal :
- 1 épreuve sur machine - 1h30
- en cas de tiers-temps : 1/3 temps supplémentaire
En cas de non validation d’une UE, le jury peut autoriser l’élève ingénieur à passer des épreuves complémentaires pour la valider.
Informations complémentaires
Code de l'enseignement : KAIN5M12
Langue(s) d'enseignement : 
Vous pouvez retrouver ce cours dans la liste de tous les cours.
Bibliographie
1. Cours en ligne sur le site moodle : https://im2ag-moodle.univ-grenoble-alpes.fr/
suivre les liens Polytech > INFO > INFO3 > Prog-C
2. "Programmer en langage C", Claude Delannoy, Eyrolles.