Fatti:
A.
Con pubblicazione sul Foglio ufficiale del Cantone Ticino del 1° marzo 2016, le C._ SA hanno indetto un concorso, retto dalla legge sulle commesse pubbliche del 20 febbraio 2001 (LCPubb; RL/TI 7.1.4.1) ed impostato secondo la procedura libera, per l'aggiudicazione di una costruzione prefabbricata in legno e facciate ventilate concernente l'ampliamento nord/sud dello stabile amministrativo di D._.
Il bando di concorso specificava che la commessa sarebbe stata attribuita al miglior offerente, tenendo conto dei seguenti criteri e fattori di ponderazione:
1. Economicità dell'offerta: 50 %;
2. Attendibilità del prezzo: 20 %;
3. Attendibilità programma lavori: 10 %;
4. Referenze per lavori analoghi: 15 %;
5. Formazione apprendisti: 5 %.
Le disposizioni particolari del Catalogo delle posizioni normalizzate (di seguito: CPN) 102, parte integrante degli atti d'appalto, precisavano nel dettaglio tutti i documenti e le informazioni che i concorrenti erano tenuti ad inoltrare con la loro offerta. Fra questi figuravano espressamente la relazione tecnica ed il programma dei lavori; in particolare, la posizione 224.410 CPN 102 dell'allegato 1 specificava le esigenze in relazione all'allestimento di quest'ultimo, mentre la posizione 252.130 CPN 102 stabiliva che i documenti necessari per valutare l'offerta secondo i criteri di aggiudicazione enunciati dovevano essere allegati all'offerta e che, nel caso di assenza o palese allestimento incompleto di uno o più documenti richiesti, l'offerta sarebbe stata direttamente estromessa dalla procedura d'aggiudicazione. La posizione 259.820 CPN 102 ("motivi di esclusione") ribadiva che la mancata presentazione dei documenti richiesti comportava l'esclusione dell'imprenditore dal concorso. D'altro canto, la posizione 252.300 CPN 102 stabiliva che i concorrenti avevano la possibilità di offrire prodotti equivalenti a quelli richiesti nei moduli CPN 332, 343 e 363, purché rispettassero i requisiti tecnici indicati dal committente nel capitolato e modulo d'offerta, e che l'imprenditore era tenuto a presentare la lista dei prodotti equivalenti offerti e le rispettive schede tecniche; in caso di dimenticanza dell'indicazione, nel modulo di offerta, del prodotto equivalente offerto, il committente avrebbe verificato l'equivalenza del prodotto proposto sulla base delle schede tecniche allegate all'offerta. Qualora non si fosse trattato di prodotti equivalenti, l'offerta sarebbe stata esclusa (posizione 259.820 CPN 102).
Né il bando di concorso né delle disposizioni particolari CPN 102 sono stati impugnati.
B.
Entro il termine impartito, sono giunte al committente quattro offerte, per importi complessivi compresi tra fr. 1'574'505.95 e fr. 1'834'794.70. Esperite le necessarie verifiche tramite i propri consulenti esterni, il 24 maggio 2016 le C._ SA hanno risolto di escludere un'offerta e di assegnare la commessa alla A._ SA di X._, giunta prima in graduatoria con 90.91 punti.
C.
Contro tale decisione, la ditta B._ SA di Y._, classificatasi seconda con 84.61 punti, è insorta davanti al Tribunale cantonale amministrativo il quale, con sentenza del 18 novembre 2016, ne ha accolto il gravame, ha annullato la decisione impugnata e le ha aggiudicato le opere litigiose.
D.
Il 19 dicembre 2016, la A._ SA ha impugnato la sentenza cantonale davanti al Tribunale federale con un ricorso in materia di diritto pubblico e, in un atto separato, con un ricorso sussidiario in materia costituzionale. Con il primo rimedio chiede, in via principale, che la sua impugnativa sia accolta e che venga confermata la decisione 24 maggio 2016 con la quale le C._ SA le hanno aggiudicato le opere; in via subordinata, domanda il rinvio degli atti al Tribunale cantonale amministrativo per nuova decisione. Con il secondo rimedio propone l'accoglimento del ricorso e il rinvio degli atti alla Corte cantonale per nuova decisione. Nel merito, fa valere la violazione del diritto di essere sentito nonché - ma solo con il ricorso in materia di diritto pubblico - un eccesso del potere di apprezzamento e, di transenna, una violazione del principio di proporzionalità e del divieto di formalismo eccessivo.
Chiamato ad esprimersi il Tribunale cantonale amministrativo, dopo aver sottolineato le ragioni per le quali secondo lui la censura relativa alla violazione del diritto di essere sentito andava respinta, si è riconfermato nelle motivazioni e nelle conclusioni della propria sentenza. La B._ SA ha domandato in via principale che i ricorsi siano dichiarati inammissibili e, in via secondaria, che siano respinti, mentre le C._ SA hanno postulato la conferma della sentenza cantonale.
In replica la ricorrente ha confermato le proprie motivazioni e conclusioni.
E.
Con decreto presidenziale del 20 gennaio 2017 è stato rifiutato l'effetto sospensivo al gravame.

Diritto:
1.
1.1. Il Tribunale federale esamina d'ufficio e con piena cognizione la sua competenza (<ref-law>), rispettivamente l'ammissibilità dei gravami che gli vengono sottoposti (<ref-ruling> consid. 1 pag. 254; <ref-ruling> consid. 1 pag. 44).
1.2. Il litigio riguarda una commessa pubblica. In dispregio dell'<ref-law>, il quale prevede che la parte che intende impugnare una decisione sia con un ricorso ordinario sia con un ricorso in materia costituzionale deve presentare entrambi i ricorsi con una sola e medesima istanza, la ricorrente ha introdotto due ricorsi separati. Al fine di non prolungare la procedura e ritenuto che la legge stessa non contempla alcuna sanzione per la violazione di tale obbligazione, il Tribunale federale ha tuttavia rinunciato a rinviare gli stessi alla ricorrente affinché li modificasse per renderli conformi alla norma citata (sentenza 2C_638/2007 del 7 aprile 2008 consid. 1.2 e riferimenti dottrinali) e, con decreto presidenziale del 20 gennaio 2017, ha congiunto le cause. Pertanto, in applicazione dell'<ref-law>, i due ricorsi saranno oggetto di un unico giudizio (sentenza 2C_638/2007 citata consid. 1.2 secondo paragrafo).
1.3. Giusta l'<ref-law> il Tribunale federale giudica i ricorsi sussidiari in materia costituzionale solo laddove non sia ammissibile il ricorso ordinario. Occorre quindi innanzitutto esaminare se la via del ricorso in materia di diritto pubblico sia aperta.
1.4. In ambito di commesse pubbliche, detto rimedio è ammissibile solo alla duplice condizione che il valore dell'appalto raggiunga uno di quelli previsti dall'art. 83 lett. f n. 1 LTF e, cumulativamente, che la fattispecie sollevi una questione di diritto di importanza fondamentale giusta l'art. 83 lett. f n. 2 LTF (<ref-ruling> consid. 1.2 pag. 360 seg. e riferimenti). Incombe alla parte ricorrente (<ref-law>) dimostrare l'adempimento di queste due condizioni, pena l'inammissibilità dell'impugnativa (<ref-ruling> consid. 1.2 pag. 20 seg. e richiamo), a meno che la questione di principio si imponga con evidenza (<ref-ruling> consid. 1.4.1 pag. 119; <ref-ruling> consid. 1.1.2 pag. 289; <ref-ruling> consid. 1.3 pag. 410; <ref-ruling> consid. 4 pag. 342).
1.4.1. L'esistenza di una questione di diritto d'importanza fondamentale, apprezzata in funzione del contenuto della controversia sottoposta al Tribunale federale, va ammessa in modo restrittivo (<ref-ruling> consid. 1.4 pag. 118 e rinvii). Per ritenere adempiuto il presupposto dell'art. 83 lett. f n. 2 LTF non basta che il Tribunale federale non si sia mai pronunciato sulla problematica sottopostagli. Occorre altresì che, nel caso concreto, si manifesti la necessità di risolvere una questione che dà luogo ad un'incertezza qualificata che richiede in maniera impellente un chiarimento da parte del Tribunale federale quale autorità giudiziaria suprema incaricata di assicurare un'interpretazione uniforme del diritto federale (<ref-ruling> consid. 1.4.1 pag. 118 seg; <ref-ruling> consid. 1.2 pag. 161 e rispettivi invii). Quando si tratta unicamente di applicare al caso concreto i principi sviluppati dalla giurisprudenza non si è manifestamente in presenza di una questione di diritto d'importanza fondamentale (sentenza 2C_6/2016 del 18 luglio 2016 consid. 1.4.1 e richiami, non pubblicato in <ref-ruling>).
Viceversa può accadere che una questione già risolta dal Tribunale federale costituisca una questione di diritto d'importanza fondamentale. Ciò è il caso segnatamente quando la giurisprudenza al riguardo non sia chiara né costante oppure quando dia luogo a molte critiche da parte della dottrina (<ref-ruling> consid. 1.2.2.1 pag. 21; <ref-ruling> consid. 1.4.1 pag. 118 seg.). Determinante è l'importanza generale dell'elemento litigioso, non il suo significato o le sue ripercussioni per le parti coinvolte nel caso specifico (<ref-ruling> consid. 1.2 pag. 210; <ref-ruling> consid. 1.1.2 pag. 147; sentenza 2C_445/2017 del 9 giugno 2017 consid. 2. 3 secondo paragrafo e richiami, tutti con rinvii giurisprudenziali e/o dottrinali). In ogni caso, la questione di diritto d'importanza fondamentale deve riferirsi alle commesse pubbliche (<ref-ruling> consid. 1.4.1 pag. 119 e riferimenti; sentenza 2C_6/2016 citata consid. 1.4.1 non pubblicato in <ref-ruling>).
1.4.2. Nella fattispecie, la ricorrente ravvisa una questione giuridica d'importanza fondamentale nell'esigenza di chiarire fino a che punto il tribunale investito di un ricorso in materia di commesse pubbliche possa o debba riesaminare la decisione di aggiudicazione, e persino l'offerta vincente, sottoponendo ad un controllo anche questioni che non erano state oggetto di alcuna contestazione da parte dell'insorgente, per poi porle a fondamento della propria decisione sul ricorso. Tale modo di procedere lederebbe anche gravemente il diritto di essere sentito dell'aggiudicataria (e del committente). Infine, il fatto che la questione sia suscettibile di riproporsi in parecchi altri casi proprio nel settore delle commesse pubbliche giustificherebbe un chiarimento da parte della più alta istanza giudiziaria, che possa fungere da riferimento per la prassi.
La tesi non può essere seguita. In effetti, la questione sollevata rileva manifestamente dell'applicazione concreta di principi generali quali il potere di esame dell'autorità di ricorso cantonale in materia di appalti, il principio dell'allegazione, il divieto del formalismo eccessivo e il diritto di essere sentiti. Con questi, la prassi si è già ripetutamente confrontata; la loro applicazione ad una fattispecie particolare dipende in larga parte dal caso specifico e non richiede un ulteriore chiarimento generale.
1.4.3. Ne discende che, conformemente alla giurisprudenza precedentemente evocata, il ricorso in materia di diritto pubblico non verte su nessuna questione giuridica d'importanza fondamentale e risulta pertanto inammissibile, a prescindere dal raggiungimento dei valori soglia richiesti dall'art. 83 lett. f n. 1 LTF, presupposto che peraltro la ricorrente nemmeno ha affrontato.
1.5. Interposto tempestivamente (art. 117 in relazione con l'<ref-law>) contro una decisione finale (art. 117 e art. 90 LTF) pronunciata da un'autorità cantonale di ultima istanza con natura di tribunale superiore (art. 114 e art. 86 cpv. 1 lett. d e cpv. 2 LTF), è invece ammissibile il ricorso sussidiario in materia costituzionale presentato congiuntamente dalla ricorrente (art. 113 segg. LTF). Siccome è stato inoltrato dalla ditta aggiudicataria, che in sede cantonale si è vista annullare la delibera delle opere litigiose in favore del concorrente classificatosi in seconda posizione, è anche dato un interesse giuridicamente protetto a ricorrere (<ref-law>).
All'entrata in materia non si oppone infine nemmeno il fatto che la ricorrente abbia formulato le proprie conclusioni senza tener conto del carattere di principio riformatorio del ricorso sussidiario in materia costituzionale (art. 107 cpv. 2 in relazione con l'<ref-law>; sentenza 2D_54/2015 del 13 aprile 2016 consid. 1. 2 e richiamo). In effetti, dalla motivazione risulta comunque chiaro che l'insorgente chiede il rinvio per essere sentita in merito agli aspetti che hanno portato all'annullamento dell'aggiudicazione in suo favore. D'altro canto un'eventuale violazione del diritto di essere sentito non potrebbe comunque essere sanata in questa sede, non fruendo questa Corte dello stesso potere di esame dell'autorità decidente, motivo per cui in caso di accoglimento del ricorso il Tribunale federale non potrebbe far altro che rinviare la causa all'autorità cantonale (<ref-ruling>, consid. 1.3 pag. 383; <ref-ruling> consid. 3.1 pag. 489 seg.; sentenza 2C_103/2010 del 27 settembre 2010 consid. 7 con ulteriori rinvii).
2.
Con il ricorso sussidiario in materia costituzionale può venir censurata solo la violazione dei diritti costituzionali (<ref-law>), il cui rispetto non è esaminato d'ufficio (<ref-law>, a cui rinvia l'<ref-law>). Ciò significa che la parte ricorrente deve spiegare in modo chiaro e dettagliato, alla luce dei considerandi della sentenza impugnata, quali diritti costituzionali sarebbero stati violati (<ref-ruling> consid. 1.2 pag. 234; <ref-ruling> consid. 6.1. pag. 31 seg.; <ref-ruling> consid. 3.2 pag. 399 seg. e rispettivi rinvii). In concreto, non è infondato chiedersi se la memoria ricorsuale adempia pienamente le accresciute esigenze di motivazione fissate dalle disposizioni summenzionate. In effetti, è vero che essa espone il punto di vista dell'insorgente, ma, per quanto concerne il diritto in questione, si limita in sostanza alla sua enunciazione ed all'illustrazione dell'estratto di alcune sentenze ad esso relative; non indica invece, ad esempio, in maniera veramente puntuale e argomentata la ragione per la quale la violazione del diritto di essere sentito sarebbe stata palese nella fattispecie. Viste le considerazioni che seguono, la questione può comunque rimanere aperta.
3.
3.1. Come detto, il ricorso sussidiario in materia costituzionale verte esclusivamente sulla censura relativa a una violazione del diritto di essere sentito ancorato nell'<ref-law> Quand'anche si volesse considerare la natura costituzionale di altre censure di merito esposte soltanto con il ricorso ordinario e non più riprese nel ricorso sussidiario, il carattere insufficiente della relativa motivazione (<ref-law>) impedisce comunque di tenerne conto in questa sede. Non occorre quindi con la presente sentenza esprimersi in merito alla validità degli argomenti fondanti la decisione impugnata.
3.2. Il diritto di essere sentito sancito dall'<ref-law> è una componente del diritto ad un processo equo e comprende il diritto di prendere conoscenza degli atti sottoposti dalle altre parti all'autorità e di potersi esprimere in proposito, indipendentemente dalla loro rilevanza per il giudizio (<ref-ruling> consid. 4.1.1 pag. 52 seg.; <ref-ruling> consid. 3.2 pag. 191 seg. e rispettivi riferimenti). Spetta infatti alle parti, e non al giudice, decidere se una presa di posizione o un nuovo mezzo di prova versato agli atti contenga elementi che richiedono la formulazione di osservazioni da parte loro; è quindi necessario dare loro la facoltà di determinarsi se lo ritengono opportuno (<ref-ruling> consid. 2.1 pag. 485, con riferimenti). Questo diritto, che non è tuttavia assoluto e che, a determinate condizioni, può essere limitato, trova applicazione anche in materia di diritto delle commesse pubbliche (<ref-ruling> consid. 3.3 pag. 496; sentenze 2C_277/2013 del 7 maggio 2013 consid. 1.5; 2C_890/2008 del 22 aprile 2009 consid. 5.3.3. con rispettivi richiami; vedasi anche l'art. 8 cpv. 1 lett. d della legge federale sugli acquisti pubblici del 16 dicembre 1994 [LAPub; RS 172.056.1], l'art. XIV cpv. 3 dell'Accordo sugli appalti pubblici concluso il 15 aprile 1994 [AAP; RS 0.632.231.422] e l'art. 11 lett. g del Concordato intercantonale del 25 novembre 1994/15 marzo 2001 sugli appalti pubblici [CIAP; RS 172.056.5]).
3.3. Nel concreto caso, la ricorrente ritiene che la violazione del diritto di essere sentito sarebbe generata dal fatto che il Tribunale cantonale amministrativo ha accolto il ricorso della ditta classificatasi seconda fondandosi su due argomenti che quest'ultima nemmeno aveva censurato nel proprio allegato di ricorso e che non erano quindi stati oggetto di discussione nella procedura.
3.3.1. Da un esame degli atti emerge che in effetti, in sede cantonale, la principale censura sollevata dalla citata ditta riguardava il carattere lacunoso e la mancanza di attendibilità del programma dei lavori presentato dall'aggiudicataria. Nella decisione impugnata (cfr. consid. 2.3 della stessa) invece, dopo aver analizzato i requisiti posti dalla documentazione di gara in relazione al programma lavori, il Tribunale cantonale amministrativo ha stabilito che sebbene la conformità della documentazione prodotta dalla deliberataria con quanto richiesto dal capitolato potesse apparire perlomeno dubbia, la questione poteva rimanere aperta poiché la sua offerta avrebbe dovuto ad ogni modo essere esclusa per altre ragioni. Così, la Corte cantonale ha, da un lato, rilevato che la committente avrebbe dovuto escluderla dalla gara perché essa, avvalendosi della possibilità di offrire un prodotto analogo a quello di riferimento indicato nella posizione 341.111 CPN 343 per la fornitura del telo per facciate (foglio paravento tipo Sager o similare), ha offerto un prodotto (Stamisol fassade) che in realtà non era equivalente poiché le sue specifiche tecniche (in particolare il valore s-d <=0.09 m) non corrispondevano a quelle richieste (valore s-d <=0.03 m). I giudici cantonali hanno sottolineato che le precise disposizioni di gara non lasciavano spazio all'apprezzamento del committente per valutare, in sede di aggiudicazione, se la diversa soluzione proposta dall'aggiudicataria fosse equivalente a quella prescritta dagli atti di gara. D'altra parte, hanno rilevato che la deliberataria aveva completato solo parzialmente la posizione 133.411 CPN 332 del modulo di offerta, limitandosi ad indicare un prezzo per i dispositivi tipo linee vita, ganci, ecc., per il montaggio della copertura, senza tuttavia specificare il tipo di prodotto offerto. Essendo l'offerta incompleta, ovvero non compilata in ogni sua parte (art. 40 cpv. 1 del regolamento di applicazione della legge sulle commesse pubbliche e del concordato intercantonale sugli appalti pubblici del 12 settembre 2006, RLCPubb/CIAP; RL/TI 7.1.4.1.6), la stazione appaltante avrebbe dovuto escluderla. Il Tribunale cantonale amministrativo ha quindi, come detto, annullato la decisione di aggiudicazione a favore della ditta deliberataria e aggiudicato la commessa alla qui opponente.
3.3.2. La sorpresa mostrata dalla ricorrente rispetto a tale motivazione non è tuttavia giustificata. In effetti, come rettamente rilevato anche dai giudici ticinesi, l'insorgente in sede cantonale ha subito censurato, in sede di replica, cioè dopo aver preso visione dell'incarto completo prodotto dalla stazione appaltante con la risposta (e quindi fino ad allora a lei non noto), lo scambio di corrispondenza (scritti 21 aprile, 25 aprile e 19 maggio 2016) avvenuto tra la committente e l'aggiudicataria posteriormente all'inoltro delle offerte e la successiva produzione di ulteriore documentazione da parte di quest'ultima. È vero che l'ha fatto in maniera piuttosto sintetica, ma sufficientemente chiara; tant'è che ha concluso rilevando che "tale modo di procedere viola la parità di trattamento e le regole della gara, ritenuto che fuori ogni tempo massimo l'offerta della A._ è stata ulteriormente completata. Anche per questo motivo il ricorso va accolto e l'offerta di tale società va esclusa" (vedasi, negli atti cantonali, l'atto di replica del 14 luglio 2016 punto 10 pag. 7). La qui ricorrente, con la duplica, ha peraltro dimostrato di aver colto l'esistenza della censura, anche se al riguardo si è limitata ad osservare che "la ricorrente introduce un nuovo argomento di ricorso, evidentemente questo modo di procedere non è ammissibile e quindi quanto esposto al punto 10 della replica stessa dovrebbe essere interlineato"e, nel merito, ha soltanto ribadito in maniera interlocutoria la conformità del procedimento operato dalla committente con l'art. 43 RLCPubb/CIAP (cfr. negli atti cantonali l'atto di duplica del 22 luglio 2016 punto 32 seg. pag. 6). La ricorrente spiega di non essersi adeguatamente espressa in merito perché, anche in ragione del limitato potere di apprezzamento che l'autorità giudiziaria dovrebbe imporsi nell'ambito delle commesse pubbliche, non aveva motivo di prevedere che il Tribunale amministrativo cantonale avrebbe proceduto ad un riesame degli aspetti sollevati nello scambio di corrispondenza (peraltro, a suo dire, "assolutamente usuale") avvenuto successivamente all'apertura delle offerte.
3.3.3. La sua tesi non è tuttavia condivisibile. Il contenuto dei tre scritti posteriori all'apertura delle offerte menzionati nella replica si riferisce in effetti apertamente ai due aspetti contestati: i primi due (del 21 e del 25 aprile 2016) menzionano esplicitamente la problematica legata alla mancanza di conformità del prodotto offerto alle prescrizioni tecniche di cui alla posizione 341.111 CPN 343, mentre il terzo (del 19 maggio 2016) dà atto dell'inoltro a posteriori e a richiesta della stazione appaltante della scheda tecnica per il prodotto inerente alla posizione 133.411 CPN 332. In tali circostanze, tenuto conto sia del principio dell'applicazione d'ufficio del diritto, sia del relativo margine di apprezzamento di cui godono le autorità cantonali nel valutare la conformità delle offerte alle prescrizioni di gara e nel sancirne l'estromissione in caso di irregolarità (sentenza 2C_241/2012 del 28 giugno 2012 consid. 4. 3 pubblicata parzialmente in: RtiD 2013 I pag. 91 segg.), era prevedibile che i giudici cantonali si sarebbero chinati sulla questione. Stando così le cose, non si può rimproverare all'istanza inferiore di aver violato il diritto di essere sentito della qui ricorrente, né di aver deciso cogliendola di sorpresa, come invece lei pretende. La decisione impugnata, che non procede da una violazione di norme essenziali di procedura, merita quindi conferma.
3.4. Per quanto precede, il ricorso in materia di diritto pubblico è inammissibile. Il ricorso sussidiario in materia costituzionale è invece respinto e la sentenza impugnata confermata.
4.
Le spese giudiziarie seguono la soccombenza (<ref-law>). La ricorrente verserà inoltre all'opponente, rappresentata da un'avvocata, un'indennità di fr. 5'500.-- per ripetibili della sede federale (art. 68 cpv. 1 e 2 LTF). Già solo perché non assistite da un avvocato (<ref-ruling> consid. 4 p. 446), alle C._ SA non dev'essere riconosciuta alcuna indennità per spese ripetibili.

Per questi motivi, il Tribunale federale pronuncia:
1.
Il ricorso in materia di diritto pubblico (incarto 2C_1170/2016) è inammissibile.
2.
Il ricorso sussidiario in materia costituzionale (incarto 2D_55/2016) è respinto.
3.
Le spese giudiziarie di fr. 5'500.-- sono poste a carico della ricorrente.
4.
La ricorrente verserà all'opponente un'indennità di fr. 5'500.-- a titolo di ripetibili per la sede federale.
5.
Comunicazione ai patrocinatori delle parti, alle C._ SA, al Dipartimento del territorio, Ufficio dei lavori sussidiati e degli appalti, e al Tribunale amministrativo del Cantone Ticino.