La fonction vérifie soi-disant si la taille des deux tableaux est la même. S'ils sont, comparez chaque index des deux tableaux et voir lequel a une plus grande valeur. Stocker la plus grande valeur dans un troisième tableau. Si les deux valeurs sont égales, alors stockez un zéro à l'intérieur de la 3ème matrice. Avant la fin de la fonction, affichez tous les éléments du troisième tableau. Si les tailles des deux tableaux ne sont pas égales, la "comparaison n'est pas possible".
Tout ce que j'ai essayé est une force brute étudiante ansi c mais je suis toujours un peu perdue. P>
entrée: p> sortie: p> Entrée: p> sortie: p> la comparaison n'est pas possible. P> p> exemple 2: h3>
3 Réponses :
Vous pouvez le faire en utilisant une fonction appelée "Tailleof".
if(sizeof(arrA) == sizeof(arrB)){
//OK
}else{
//NG
}
Tailleof code> est un opérateur, pas une fonction.
単純 英語 英語 い まし まし た 修正 修正 ありがとうござい ありがとうござい ありがとうござい.
Regardons votre fonction et prenez-la pièce à l'œuvre, avant tout, puisque votre comparaison peut réussir (réseaux de taille égale) ou échec (réseaux de taille inégale), vous devez choisir un type de retour qui peut indiquer le succès ou échec. Type int code> est bien, vous pouvez choisir votre schéma, par exemple. -1 code> est une panne, 1 code> pour le succès ou 0/1 code> - soyez juste cohérent. Donc, votre prototype de fonction (présumer que vous souhaitez remplir arrc [] code> dans votre fonction et effectuez le Arrc rempli [] code> Retour utilisable dans l'appelant), vous pouvez faire: $ gcc -Wall -Wextra -pedantic -std=c11 -Ofast -o bin/cmparrays_unequal \
cmparrays.c -DTESTUNEQUAL
$ ./bin/cmparrays_unequal
Comparison is not possible
Merci beaucoup pour la réponse super détaillée. J'essaie vraiment de traverser tout cela et de comprendre. Nous sommes au milieu de l'enfer la semaine alors je ne pourrais peut-être pas répondre avec une question jusqu'à ce que nous ayons terminé avec les examens et les trucs. Encore merci.
Pour obtenir la longueur de la matrice, vous devez diviser la taille de la taille de la matrice que vous souhaitez vérifier avec le type de tableau, exemple: dans sizeofarraya i> vous obtiendrez 5. P> ci-dessous le code est exemple: p>
Vous avez donc
void cmParrays (int * a, int * b, taille_t sza, size_t szb) {...} code> et vous avez réussi les tableaux et la taille de chacun à votre fonction. (Vous pouvez également passerint * c, Taille_t szc code> en tant que paramètres si vous devez transmettre un 3ème tableau dans). Maintenant, implémentez votre logique. Où es-tu coincé?Montrez votre code i> b>
(1) Vous devez connaître la taille des deux tableaux à l'avance de vérifier si elles sont égales ou non. (2) Tableau de passage 1, Array 2, Taille 1, Taille 2 de la fonction. (3) Quittez si (taille 1! = Taille 2). (4) boucle de i = 0 à i = taille 1 ou taille 2. et comparez le tableau 1 [i] et le tableau 2 [i]. Mettez le max dans un troisième tableau. Une fois la boucle terminée, renvoyez l'adresse de départ de la troisième matrice.