Faits:
A. Par ordonnance du 26 mars 2008, la Chambre d'accusation de la Cour de justice du canton de Genève (ci-après la Chambre d'accusation) a déclaré irrecevable le recours formé par X._ contre le classement des plaintes que celui-ci avait déposées contre A._, B._ et C._ pour divers agissements, notamment pour voies de fait et menaces.
B. X._ recourt au Tribunal fédéral contre cette ordonnance, dont il demande l'annulation avec renvoi de la cause aux autorités cantonales pour complément d'instruction .
A titre préalable, il demande l'assistance judiciaire .

Considérant en droit:
1. Contre une décision de dernière instance cantonale qui met fin à une procédure pénale, le lésé qui est intervenu comme partie, ou qui a été empêché de le faire, peut recourir au Tribunal fédéral notamment pour violation d'un droit formel entièrement séparé du fond que lui accordent les règles de procédure applicables, catégorie de griefs qui comprend en particulier le refus injustifié de l'autorité précédente d'entrer en matière sur le moyen de droit dont elle était saisie (arrêt 6B_480/ 2007 du 31 janvier 2008, consid. 1.1 et 1.3; cf., pour la notion de droits formels entièrement séparés du fond, <ref-ruling> consid. 2a/bb p. 160).
Dirigé contre un arrêt d'irrecevabilité de la Chambre d'accusation, le présent recours est dès lors recevable.
2. La Chambre d'accusation a refusé d'entrer en matière sur le recours cantonal aux motifs que le recourant n'avait pas formulé, contrairement aux exigences de l'art. 192 al. 1 du code de procédure pénale genevois (CPP/GE; RS/GE E 4 20), de demandes claires concernant les mesures d'investigations qu'il considérait comme encore nécessaires à l'établissement des faits dont il se plaignait. Le recourant conteste ce point de vue en faisant valoir que ses conclusions résultaient "de toute évidence" de son mémoire de recours.
2.1 Le Tribunal fédéral ne peut revoir les questions de droit cantonal que sous l'angle restreint de l'arbitraire (sur cette notion: <ref-ruling> consid. 2.1 p. 9), dans le cadre d'un moyen pris de la violation d'un droit constitutionnel (cf. art. 95 et 96 LTF, a contrario), expressément soulevé et développé avec la précision requise à l'<ref-law>.
En l'espèce, le recourant ne critique pas l'interprétation que la Chambre d'accusation a donnée de l'<ref-law>/GE dans l'arrêt attaqué. Il est dès lors acquis que le recours cantonal était irrecevable si le recourant n'énonçait pas précisément les mesures d'instructions complémentaires qu'il demandait.
2.2 A la lecture du mémoire que le recourant a adressé à la Chambre d'accusation le 24 octobre 2007, on ne discerne pas que cette juridiction ait constaté les faits de manière manifestement inexacte, au sens de l'<ref-law>, en retenant que le recourant n'avait pas précisé quelles mesures d'instruction complémentaires il demandait. Au regard des constatations de fait déterminantes de l'arrêt attaqué, la Chambre d'accusation n'a dès lors pas violé les droits procéduraux du recourant en déclarant son recours irrecevable.
3. Ayant trait au fond de la cause, que la Chambre d'accusation n'a pas examiné, les autres moyens du recourant sont sans pertinence. Le recours, manifestement mal fondé, doit dès lors être rejeté en application de l'<ref-law>.
4. Comme son recours était dénué de chance de succès, le recourant doit être débouté de sa demande d'assistance judiciaire (<ref-law>, a contrario) et supporter les frais de justice (<ref-law>), fixés à 800 francs.

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. La demande d'assistance judiciaire est rejetée.
3. Les frais judiciaires, fixés à 800 fr., sont mis à la charge du recourant.
4. Le présent arrêt est communiqué aux parties et à la Chambre d'accusation du canton de Genève.
Lausanne, le 23 juin 2008
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président: Le Greffier:
Schneider Oulevey