Programmering C: Tentamen of 5 Prioritet och associativitet hos operatorerna i C De viktigaste operatorerna: Prioritet Kategori Operator

Relevanta dokument
Tentamen i. för D1 m fl, även distanskursen. lördag 26 februari 2011

Tentamen i Programmering grundkurs och Programmering C

Tentamen i. för D1 m fl, även distanskursen. lördag 28 maj 2011

Tentamen i. Programmering i språket C

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Tentamen i Programmering grundkurs och Programmering C

Tentamen i. Programmering i språket C

Tentamen i Programmering grundkurs och Programmering C

Tentamen i Programmering grundkurs och Programmering C

Tentamen i. för D1 m fl, även distanskursen. lördag 19 januari 2013

Tentamen i Programmering grundkurs och Programmering C

Tentamen i Programmering grundkurs och Programmering C

Tentamen i Programmering grundkurs och Programmering C

Tentamen i Programmering grundkurs och Programmering C

Kompilatorer och interpretatorer

Kompilatorer och interpretatorer

För alla uppgifter på tentan gäller: Man får använda både standard-c++ (som till exempel har pekare som anges med * och objekt som skapas med new) och

Databasteknik för D1, SDU1 m fl

Tentamen i Programmering grundkurs och Programmering C

Databasteknik för D1, SDU1 m fl

Lösningar till uppgifterna sätts ut på kurssidan och på WebCT (Gamla Tentor) i dag kl 19. Tentamen i Programmering C, 5p, Distans, övriga,

PDA-applikationer med.net

Tentamen ges för: Tentamensdatum: Tid:

Inledande programmering med C# (1DV402) 85/2=42. OBS! Heltal 1 (13)

Tentamen i Programmering

Lösningar till uppgifterna sätts ut på kurssidan på nätet idag kl Omtentamen i Programmering C, 5p, A1, D1, E1, Fri, Pr1, Te/Ek1,

TDDC77 Objektorienterad Programmering

Beräkningsvetenskap föreläsning 2

Övningsuppgifter till föreläsning 2 Variabler och uttryck

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl Tentamen i Programmering C, Fri, Kväll,

Användarhandledning Version 1.2

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl Omtentamen i Programmering C, Fri, Kväll,

HI1024 Programmering, grundkurs TEN

Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Omtentamen i Programmering C, 5p, fristående, kväll,

1/15/2013. DD1310/DD1314/DA3009 Programmeringsteknik. Lärandemål... Vilka läser kursen? ...fler lärandemål VARFÖR? Föreläsning 1

Tentamen i Grundläggande programmering STS, åk 1 lördag

Planering Programmering grundkurs HI1024 HT 2014

Johan Karlsson Datavetenskap för teknisk kemi, 10p, moment 1 Datavetenskap Umeå Universitet. Tentamen

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Lämna in en ifylld kursvärdering tillsammans med tentan! Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl

TDDC77 Objektorienterad Programmering

Tenta (TEN3) i kursen 729G04 Programmering och diskret matematik 5 feb 2016, kl 14:00-18:00

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??

HI1024 Programmering, grundkurs TEN

Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl

729G74 - IT och programmering, grundkurs. Dugga.

HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN1 - Teoretisk tentamen Tid: Torsdagen den 20 oktober 2011,

Uppgift 1 (grundläggande konstruktioner)

Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1. Måndagen den 10 januari 2011,

Planering Programmering grundkurs HI1024 HT TIDAA

HI1024 Programmering, grundkurs TEN

Planering Programmering grundkurs HI1024 HT data

Klassdeklaration. Metoddeklaration. Parameteröverföring

HI1024 Programmering, grundkurs TEN

TDIU01 - Programmering i C++, grundkurs

HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011,

TENTAMEN OOP

Skriv i mån av plats dina lösningar direkt i tentamen. Skriv ditt kodnummer längst upp på varje blad.

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

OOP Tentamen

INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

Tentamen i Introduktion till programmering

Föreläsning 4. Val, boolska värden, läsbarhet, osv

INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12

TENTAMEN OOP

Tentamen i Grundläggande programmering STS, åk 1 fredag

TENTAMEN PC1307 PC1546. Statistik (5 hp) Lördag den 11 december, Ansvarig lärare: Bengt Jansson ( , mobil: )

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 13. Omtentamen i Programmering C, 5p, A1, D1, PA1, Fri,

Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

Det är principer och idéer som är viktiga. Skriv så att du övertygar examinatorn om att du har förstått dessa även om detaljer kan vara felaktiga.

KOMPLETTERANDE HEMTENTAMEN TDDB53

Programmering för språkteknologer I, VT2012. Rum

729G04 Programmering och diskret matematik

KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012

Grundläggande programmering med C# 7,5 högskolepoäng

PROGRAMMERING-JAVA TENTAMINA

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla

HI1024 Programmering, grundkurs TEN

Uppgifter till tenta i 729G04 Programmering och diskret matematik. 17 december 2015, kl 14:00-18:00

Uppgifter till tenta i 729G04 Programmering och diskret matematik. 7 augusti 2015, kl 08:00-12:00

HI1024 Programmering, grundkurs TEN

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

Övningsuppgifter kapitel 8

Tentamen i Grundläggande programmering STS, åk

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer

LÖSNINGSFÖRSLAG TENTAMEN

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

Transkript:

Programmering C: Tentamen 2008-05-31 1 of 5 Örebro universitet Institutionen för teknik Thomas Padron-McCarthy (Thomas.Padron-McCarthy@tech.oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen lördag 31 maj 2008 kl 14:00-18:00 Gäller som tentamen för: DT1016 Datateknik A, Programmering grundkurs, provkod 0100 DT1007 Datateknik A, Tillämpad datavetenskap, provkod 0410 DT1006 Datateknik A, Programmering C, distans, provkod 0100 PRG045 Programmering C, provkod 0110 (och 0100, och 0101) TDD121 Tillämpad datavetenskap A, provkod 0700 (och 0400) TDP118 Programmering C, distans, provkod 0110 (och 0100) Hjälpmedel: Inga hjälpmedel. Poängkrav: Maximal poäng är 32. För godkänt betyg (3 respektive G) krävs 16 poäng. Resultat och Meddelas via e-post eller på distanskursens hemsida, lösningar: http://basen.oru.se/kurser/c/2007-2008-p34-distans/, senast lördag 21 juni 2008. Återlämning av Efter att resultatet meddelats kan tentorna hämtas på tentor: institutionen. Man kan också få sin rättade tenta hemskickad. Examinator och jourhavande: Thomas Padron-McCarthy, telefon 070-73 47 013. Skriv tydligt och klart. Lösningar som inte går att läsa kan naturligtvis inte ge några poäng. Oklara och tvetydiga formuleringar kommer att misstolkas. Skriv den personliga tentamenskoden på varje inlämnat blad. Skriv inte namn eller personnummer på bladen. Skriv bara på en sida av papperet. Använd inte röd skrift. Antaganden utöver de som står i uppgifterna måste anges. Skriv gärna förklaringar om hur du tänkt. Även ett svar som är fel kan ge poäng, om det finns med en förklaring som visar att huvudtankarna var rätt. LYCKA TILL!

Programmering C: Tentamen 2008-05-31 2 of 5 Prioritet och associativitet hos operatorerna i C De viktigaste operatorerna: Prioritet Kategori Operator Associativitet Högsta Unära postfixoperatorer (), [], ->,., ++, -- vänster Unära prefixoperatorer!, ++, --, +, -, *, &, sizeof, (typ) höger Multiplikation mm *, /, % vänster Addition mm +, - vänster Jämförelser <, <=, >=, > vänster Likhetsjämförelser ==,!= vänster Logiskt OCH && vänster Logiskt ELLER vänster Lägsta Tilldelning =, +=, -=, *=, /=, %= höger

Programmering C: Tentamen 2008-05-31 3 of 5 Uppgift 1 (1 p) Vilka värden har följande uttryck? a) 1 + 2 * 3-4 b) 1 + 2-3 / 4 c) 1 + 2-3.0 / 4 Uppgift 2 (1 p) i och k är heltalsvariabler, och x är en flyttalsvariabel. Ange värdet på i, k och x då följande kod har körts. i = 0; x = 3.0; while (i < 5) { k = i; if (i == 4) x = x / 4; i = i + 2; } Uppgift 3 (1 p) x och y är postvariabler av typen struct Igelkott. Skriv de kodrader som behövs för att byta plats på innehållet i dessa två variabler. Uppgift 4 (1 p) Skriv en funktion som heter plus, som tar två flyttal som argument, och som returnerar summan av dem. Uppgift 5 (4 p) Vi vill kunna beräkna följande uttryck: Skriv därför ett komplett C-program som först läser in värdena på x, y och R, beräknar uttrycket, och till sist skriver ut uttryckets värde. Beräkningarna ska ske med flyttal. Om nämnaren i divisionen (dvs deluttrycket under divisionsstrecket) är noll, eller om deluttrycket inuti rottecknet är mindre än noll, går uttrycket inte att beräkna. I så fall ska programmet inte försöka beräkna uttrycket, utan det ska i stället skriva ut ett informativt och rättvisande felmeddelande om saken.

Programmering C: Tentamen 2008-05-31 4 of 5 Uppgift 6 (1 p) Nu ska vi jobba vidare med posttypen struct Igelkott, som vi redan sett i uppgift 3 ovan. En sådan post används för att lagra data om en igelkott. En igelkott har ett namn, en vikt, och ett antal taggar. Namnet kan vara högst tio tecken långt, till exempel Karl-Oskar. Vikten ska lagra som ett flyttal, medan antalet taggar ska vara ett heltal. Definiera posttypen struct Igelkott. Uppgift 7 (1 p) Definiera en variabel av typen struct Igelkott och initiera den med data om igelkotten Pilt, som väger 1.3 kilo och har 7000 taggar. Uppgift 8 (2 p) Vi vill kunna visa igelkottposternas innehåll på skärmen. Skriv en funktion som heter visa_igelkott, som skriver ut ett igelkott (som i uppgifterna ovan) på skärmen. Funktionen ska ta igelkottposten som parameter. Exempel på hur en utskrift skulle kunna se ut: Igelkott: Pilt Vikt: 1.3 kg Taggar: 7000 Uppgift 9 (2 p) Skriv en funktion som heter las_igelkott, och som läser in data om en igelkott. Funktionen ska skriva ut lämpliga ledtexter på standardutmatningen, och läsa in data från standardinmatningen (som normalt är kopplad till tangentbordet). Du får själv välja om du vill att funktionshuvudet ska se ut så här: struct Igelkott las_igelkott() eller så här: void las_igelkott(struct Igelkott *p) Uppgift 10 (2 p) Skriv en main-funktion som har två lokala variabler av typen struct Igelkott, och som läser in data om två igelkottar till dessa variabler med hjälp av funktionen las_igelkott. Avslutningsvis ska den använda funktionen visa_igelkott för att skriva ut data om båda igelkottarna. I den här och alla andra uppgifter på tentan gäller: Om du ska använda något från en tidigare uppgift eller deluppgift, till exempel anropa en funktion som skrevs i den tidigare uppgiften, så behöver du inte skriva samma kod igen. Du får också göra uppgiften även om du inte gjort den tidigare uppgiften.

Programmering C: Tentamen 2008-05-31 5 of 5 Uppgift 11 (4 p) Skriv ett C-program som låter användaren mata in igelkottar, och som sparar dem på en fil. Det ska läsa igelkottar ända tills användaren avslutar genom att mata in en igelkott som väger 0 kilo. Programmet ska anropa funktionen las_igelkott. Uppgift 12 (4 p) Skriv ett C-program som först frågar efter ett namn, och sen läser filen från uppgiften ovan, och skriver ut data om alla de igelkottar som har det namnet. Det ska använda funktionen visa_igelkott. Uppgift 13 (4 p) Skriv ett C-program som läser in tre rader med text, och sen skriver ut de två kortaste av dem. Om flera rader är lika långa, spelar det ingen roll vilken av dem som skrivs ut. Vi kommer aldrig att mata in längre rader än 107 tecken (plus radslutstecknet). Uppgift 14 (4 p) Kraftigt överviktig, enligt BMI-måttet. BMI, "Body Mass Index", är ett mått som kan användas för att avgöra om en person har normal vikt. BMI definieras som vikten (i kilo) delat med kvadraten på längden (i meter). Det tar alltså inte hänsyn till kroppsbyggnad, utan bara vikt och längd. Skriv ett C-program som upprepat läser in längd och vikt på en person, och skriver ut personens BMI. Programmet ska avslutas när man matar in en person som har längden eller vikten noll.