Déjà, en formatant proprement ton code, on obtient:
Code :
- #include <stdio.h>
- int main() {
- char nom[10][5];
- int i;
- int j;
- int n;
- for (i = 1; i < 10; i++) {
- for (j = 1; j < 5; j++) {
- printf("Le nom d'etudiant num %d est : ", i);
- scanf("%s",&nom[i][i]);
- printf("tapez les note de cet etudiant num %d :\n" );
- for (i = 0; i < 10; i++) {
- for (n = 0; n < 20; n++) {
- scanf("%d", &i);
- }
- }
- for (i = 0; i < 10; i++) {
- for (n = 0; n < 20; n++) {
- printf("les notes sont ", n);
- }
- }
- }
- }
- }
|
Bon, si on laisse tomber les notes, il reste
Code :
- #include <stdio.h>
- int main() {
- char nom[10][5];
- int i;
- int j;
- int n;
- for (i = 1; i < 10; i++) {
- for (j = 1; j < 5; j++) {
- printf("Le nom d'etudiant num %d est : ", i);
- scanf("%s",&nom[i][i]);
- }
- }
- }
|
char nom[10][5];
nom est un tableau de 10 chaines de 5 caractères.
Tu ne crois pas que c'est un peu court, 5 caractères pour un nom (surtout que comme ils sont terminés par un \0, il ne t'en reste que 4 d'utilisables)
for (i = 1; i < 10; i++)
D'accord, tu boucles sur les 10 noms d'étudiants possibles pour les stocker, mais ensuite
for (j = 1; j < 5; j++)
pourquoi boucler sur chaque caractère?
Bon, au fait, tes boucles sont fausses: en C, les tableaux démarrent a 0, pas à 1, donc ta première boucle devrait être
for (i = 0; i < 10; i++) { ... }
Il y a d'autres erreurs, mais corrige déjà celles la.
A+,
Message édité par gilou le 25-10-2015 à 00:15:30
---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --