Hej!
Du stöter på problem med teckenkodning. Den vanligaste teckenkodningen idag är UTF-8, vilket är en väldigt flexibel teckenkodning som kan koda alla möjliga sorters tecken. Allt från svenska ÅÄÖ, till arabiska, kinesiska, emojis, och egyptiska fallossymboler till hieroglyfer.
Självklart kan inte allt detta få plats på bara 256 möjliga teckenkoder. Utan att gå in för mycket i detalj (läs gärna om UTF-8 och Unicode om du vill veta mer!) så innebär detta att ett ö, representerat i UTF-8, blir 2 byte långt, specifikt som 0xC3 0xB6. Mindre vanliga tecken (i alla fall från en västerländsk utgångspunkt) blir fler byte långa, medan normala A-Z, siffror, vanliga symboler, blir 1 byte långa, och därmed kompatibelt med ASCII.
Terminalen i Windows kör dock inte UTF-8 som standard, utan kör istället något som kallas för CP850. Det är en av flera möjliga "code pages", eller teckentabeller, som innehåller olika möjliga kombinationer för tecken. Dessa har 1 tecken per byte, men kan i gengäld inte representera alla möjliga tecken, bara de som finns i tabellen som är 256 tecken stor. Därför kan man behöva byta teckentabell beroende på vilket språk man vill skriva i, vilket är superjobbigt och varför man numera använder Unicode, som är superjobbigt fast på ett annat sätt.
Andra varianter som används i sverige är CP437, CP1252, Latin-1 och Latin-15. ÅÄÖ ligger inte ens på samma ställen på alla dessa.
För att ytterligare röra till det verkar du använda wprintf() och fwscanf(), där w:et innebär "wide character", vilket representerar alla tecken som 2 bytes (förutom de som inte får plats i 2 bytes, ja det är komplicerat), nämligen UTF-16, vilket Microsoft av någon anledning älskar, när resten av världen använder UTF-8.
Det finns inget lätt svar på frågan utan att ha bakgrundsinformation kring olika möjliga teckenkodningar.
Övergripande, du behöver ha koll på vilken kodning dina tecken är i din fil, läsa in dem på ett korrekt sätt (vilket inte nödvändigtvis blir 1 byte per tecken, eller ens ett tecken per bokstav om man använder combining characters...), och sedan ha koll på vilket format din terminal eller din utdata behöver vara i, och konvertera vid behov.
Till att börja med, vilken teckenkodning är din fil med "ö" sparad i?