Compilatore e debugger C# online

Scrivi, compila, esegui e fai il debug di C# online. Usa breakpoint, esecuzione passo passo e ispezione degli oggetti in un IDE multifile, senza Visual Studio.

Librerie preinstallate
🚀 349,461 esecuzioni totali (43,719 questo mese)
Output

Esercitati in C# con le sfide di codice

Risolvi problemi pratici direttamente in questo editor: esegui i test di esempio, invia la soluzione e ricevi una revisione AI del codice.

Tutte le sfide C#
Difficile

Ordine dei Corsi

Ordina i corsi in modo che ogni prerequisito venga prima.

AdvancedGraphsHackathonTopological-sort
Nessuna soluzione ancora
Media

Island Perimeter

Measure the coastline of land cells in a grid.

AdvancedGridsHackathon
Nessuna soluzione ancora
Media

K-th Smallest Element

Find the k-th smallest value without fully sorting.

AdvancedCompetitive-programmingSorting
Nessuna soluzione ancora
Difficile

Median of Two Sorted Arrays

Find the median of two sorted lists combined.

AdvancedBinary-searchCompetitive-programming
Nessuna soluzione ancora
Media

Game of Life Step

Advance Conway's Game of Life by one generation.

AdvancedGridsHackathonSimulation
Nessuna soluzione ancora
Difficile

Shortest Delivery Tour

Visit every city once and return home as cheaply as possible.

AdvancedBitmasksCompetitive-programmingDynamic-programming
Nessuna soluzione ancora
Difficile

Componenti Fortemente Connesse

Conta i gruppi di nodi che possono raggiungersi a vicenda.

AdvancedCompetitive-programmingGraphs
Nessuna soluzione ancora
Difficile

Longest Path in a DAG

Find the heaviest path in a task dependency graph.

AdvancedGraphsHackathonTopological-sort
Nessuna soluzione ancora
Difficile

Matrix Chain Multiplication

Find the cheapest order to multiply a chain of matrices.

AdvancedCompetitive-programmingDynamic-programming
Nessuna soluzione ancora
Difficile

Minimum Window Substring

Find the shortest piece of text containing all required characters.

AdvancedCompetitive-programmingSliding-windowStrings
Nessuna soluzione ancora
Difficile

Word Break

Decide whether text can be split into dictionary words.

AdvancedDynamic-programmingHackathonStrings
Nessuna soluzione ancora
Difficile

Count Inversions

Count the out-of-order pairs in a list.

AdvancedCompetitive-programmingSorting
Nessuna soluzione ancora

🔷 Informazioni su questo esecutore online C# / .NET

Il CodeUtility C# Executor ti consente di scrivere ed eseguire vero codice C# direttamente nel tuo browser - senza installazioni, configurazioni di Visual Studio o .NET SDK. È alimentato da una sandbox sicura che supporta il runtime .NET e le versioni moderne del linguaggio C#, incluse C# 9 e successive.

Questo strumento utilizza dotnet-script dietro le quinte per compilare ed eseguire il tuo codice con un comportamento .NET reale, permettendoti di sperimentare sia le funzionalità base sia quelle avanzate di C# come LINQ, async/await, pattern matching e generics.

Puoi testare script semplici, funzioni e flussi logici, oppure esplorare concetti come classi, struct, ereditarietà e interfacce - il tutto in un ambiente di coding pulito e senza distrazioni.

Che tu stia imparando C#, testando algoritmi o sperimentando funzionalità .NET, il CodeUtility C# Executor ti offre un modo rapido, sicuro e affidabile per eseguire codice C# all’istante da qualsiasi browser.

Più di un semplice esecutore di codice

Usa nello stesso esecutore un editor multifile, un terminale di esecuzione isolato, librerie specifiche per il runtime, spazi di lavoro persistenti, condivisione e collaborazione in tempo reale.

Come si usa questo esecutore?

Scegli un runtime, apri o crea un file, scrivi il codice e seleziona Esegui. L’output appare nel terminale; gli utenti che hanno effettuato l’accesso possono conservare i file in uno spazio di lavoro, installare librerie e collaborare tramite le condivisioni.

  1. Seleziona una versione e modifica il file corrente oppure apri un altro file dello spazio di lavoro.
  2. Esegui il codice, inserisci i dati nel terminale quando richiesto e consulta la cronologia delle esecuzioni salvate.
  3. Usa librerie, strumenti dello spazio di lavoro, condivisione e chat quando l’attività richiede più di un frammento di codice.

💡 Nozioni di base C# ed esempi che puoi provare qui sopra

1. Dichiarazione di variabili e costanti

C# utilizza dichiarazioni di variabili a tipizzazione forte. Usa const per le costanti a tempo di compilazione e readonly per quelle a tempo di esecuzione.

int age = 30;
double pi = 3.14159;
char grade = 'A';
string name = "Alice";
bool isActive = true;

// Costanti
const int MaxUsers = 100;
const string Company = "CodeUtility";

2. Condizionali (if / switch)

Usa if, else if e switch per il flusso di controllo.

int x = 2;
if (x == 1)
{
    Console.WriteLine("Uno");
}
else if (x == 2)
{
    Console.WriteLine("Due");
}
else
{
    Console.WriteLine("Altro");
}

switch (x)
{
    case 1:
        Console.WriteLine("Uno");
        break;
    case 2:
        Console.WriteLine("Due");
        break;
    default:
        Console.WriteLine("Altro");
        break;
}

3. Cicli

C# supporta i cicli for, while e foreach.

for (int i = 0; i < 3; i++)
{
    Console.WriteLine(i);
}

int n = 3;
while (n > 0)
{
    Console.WriteLine(n);
    n--;
}

4. Array

Gli array contengono collezioni a dimensione fissa di elementi dello stesso tipo.

int[] numbers = { 10, 20, 30 };
Console.WriteLine(numbers[1]);

5. Manipolazione delle liste

Usa List<T> per collezioni dinamiche.

List<int> nums = new List<int> { 1, 2, 3 };
nums.Add(4);
nums.Remove(2);

foreach (int n in nums)
{
    Console.Write(n + " ");
}

6. Input/Output da console

Usa Console.WriteLine e Console.ReadLine per l'I/O di base.

Console.Write("Inserisci il tuo nome: ");
string name = Console.ReadLine();
Console.WriteLine($"Ciao, {name}!");

7. Funzioni

Definisci i metodi usando un tipo di ritorno, un nome e parametri.

int Add(int a, int b)
{
    return a + b;
}

Console.WriteLine(Add(3, 4));

8. Dizionari

Dictionary<TKey, TValue> memorizza coppie chiave-valore.

Dictionary<string, int> ages = new Dictionary<string, int>();
ages["Alice"] = 30;
Console.WriteLine(ages["Alice"]);

9. Gestione delle eccezioni

Gestisci gli errori a tempo di esecuzione usando try, catch e finally.

try
{
    throw new Exception("Qualcosa è andato storto");
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

10. I/O su file

Usa File e StreamReader/StreamWriter per operazioni sui file.

File.WriteAllText("file.txt", "Ciao File");
string text = File.ReadAllText("file.txt");
Console.WriteLine(text);

11. Manipolazione delle stringhe

Le stringhe in C# supportano metodi come Length, Substring, Contains.

string message = "Ciao mondo";
Console.WriteLine(message.Length);
Console.WriteLine(message.Substring(0, 5));
Console.WriteLine(message.Contains("mondo"));

12. Classi e oggetti

C# supporta la programmazione orientata agli oggetti tramite classi e oggetti.

class Person
{
    public string Name;
    public Person(string name) => Name = name;
    public void Greet() => Console.WriteLine($"Ciao, sono {Name}");
}

Person p = new Person("Alice");
p.Greet();