| Cet exemple montre les éléments syntaxiques et structurels 
        suivants : 
        La méthode de classe Main s'écrit 
          avec un « M » majuscule, 
          contrairement à ce qu'on connaît en C, 
          C++ 
          et Java. 
		Le code à droite est un Top-Level Main, sorte de Main
		invisible 
		et implicite (ça a de bons et de mauvais côtés)L'instruction using devant un espace nommé, 
          par exemple using System; permet d'omettre 
          le préfixe décrivant l'espace nommé en question 
          pour alléger l'écriture (par exemple, remplacer 
          System.Console par Console). Ceci 
          ressemble aux import de Java 
          et aux using de C++Les constantes s'expriment avec const, 
          comme en C 
          ou en C++ 
          (Java 
          utilise plutôt final)Pour écrire un texte formaté à la console, le 
          Framework de .NET utilise un format 
          qui peut rappeler celui de C 
          avec printf(). Dans 
          Console.WriteLine("a {0} b", 3);, l'entier 
          3 sera inséré à la place de 
          {0} dans le texte affiché. Conséquence : les 
          erreurs de formatage ne sont pas détectées à la 
          compilationLes « primitifs » sont transformés en équivalents objets 
          au besoin (technique qu'on nomme Boxing, et que Java 
          utilise aussi depuis la version 5). Notez 
          qu'un primitif C# 
          est en fait un alias pour un 
		struct, et 
          que dans le monde .NET, les 
          struct sont des « types valeurs » alors que les classes sont 
		des « types références »Ceci explique qu'on puisse invoquer une méthode de l'objet f (sa 
          méthode GetType() retournera le nom 
          du type dans le Framework, soit System.Single; 
          le mot float en C# 
          est un alias pour System.Single, et les 
          deux noms peuvent être utilisés de manière interchangeable). 
         | using System;
// Sans raccourcis
System.Console.WriteLine("J'aime mon prof");
// Avec raccourcis
Console.WriteLine("J'aime mon prof");
// Composition de valeurs
const int NOTE_OPTIMALE = 100,
          SEUIL_PASSAGE = 60;
Console.WriteLine("J'espère avoir un {0}% mais j'accepterais {1}%",
                  NOTE_OPTIMALE, SEUIL_PASSAGE);
// avec interpolation de texte
Console.WriteLine($"J'espère avoir un {NOTE_OPTIMALE}% mais j'accepterais {SEUIL_PASSAGE}%");
// les « primitifs » ont des méthodes
float f = 1.0f;
Console.WriteLine($"Le type de la variable f est {f.GetType()}");
// NOTE: le nom du type est celui du Framework, pas celui de C#
 |