Horreur.
Active les warnings de compilation, tu verras que tu ne termine pas ta fonction par un return.
Par ailleurs, si le fichier ne contient pas le mot, tu ne fermes pas le fichier.
break arrete une boucle (ou un switch), en continuant le code juste après elle.
1 2 3 4 5 6 7 8 9
| for (/*peu importe*/) {
//code 1;
if (/*condition*/) {
//interruption
break;
}
//code 2;
}
//suite |
une exécution sans que condition intervienne sera:
code 1; code 2;
code 1; code 2;
code 1; code 2;
code 1; code 2;
suite;
une autre sera:
code 1; code 2;
code 1; code 2;
code 1; interruption;
suite;
concernant l'indentation, tu as deux paires de choix à décider, et à respecter:
- indenter avec une tab ou avec un nombre fixe de blancs (je recommande perso la tab, mais c'est une question de goût)
- poser l'ouverture de bloc en fin de ligne, ou en début.
Pour le second point, voici ce que je veux dire:
1 2 3 4 5 6 7 8 9 10 11
| double cross_productd(double a[], double b[], unsigned int size) {
double sigma = 0d;
for (unsigned int i =0; i < size; ++i) {
//pour l'exemple, c'est inutile en réalité
if ( (a[i]==0d) || (b[i]==0d) ) {
continue;
}
sigma += a[i]*b[i];
}
return sigma;
} |
ou bien
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| double cross_productd(double a[], double b[], unsigned int size)
{
double sigma = 0d;
for (unsigned int i =0; i < size; ++i)
{
//pour l'exemple, c'est inutile en réalité
if ( (a[i]==0d) || (b[i]==0d) )
{
continue;
}
sigma += a[i]*b[i];
}
return sigma;
} |
Partager