Revision as of 23:08, 30 April 2011 by Cheng35 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

ECE 264 Exam 3 Open Book


Read Write fopen
Text fgetc fprintf "r", "w"
fgets fputc "rb", "wb"

binary fread

size_t fread(void *p, size_t size, size_tn, FILE * f);
size_t fwrite(

int count = fread(&w, sizeof(int), 1, f);
count += fread(&h,...,1,f)

if(count ==2)
{


::void fclose(FILE *f)

int feof(FILE *f)

dynamic structures?

struct Blokus
{
:int clirn,
:char* data;

}

typedef struct IntValue {
:int value;
:struct IntValue *next;
} IntValue;

IntValue *IntValue_create(int value)
{
:IntValue *iv = malloc(sizeof(IntValue));
:iv->value = value;
:iv->next = NULL;
:return iv;
}

void IntValue_destroy(IntValue *iv)
{
:free(iv);
}

IntValue *IntValueL_insertFront(IntValue *head, IntValue *node)
{
:node->next = head;
:return node;
}

void IntValueL_print(IntValue *head)
{
:whle (head!= NULL) {
:printf(" %d", head->value);
:head = head->next;
}
printf("\n");
}

int IntValueL_getCount(IntValue *head)
{
:int count = 0;
:while (head !=NULL){
:count++;
;head = head->next;
}
:return count;
}
//put at back of list
IntValue *IntValueL_insertBack(IntValue *head, IntValue *node)
{
:if(head ==NULL) {
::node-> next = NULL;
::return node;
}
:IntValue *curr = head;
:while (curr ->next != NULL)
:{
::curr = curr->next;
:}
:curr->next = node;
:node -> next = NULL;


:}


Reverse algorithm!

IntValue *new_head = NULL;
:while(head !=NULL){
::IntValue *tmp = head;
::head = head->next;
::new_head = IntValueL_insertFront(new_head,tmp);
:}
:return new_head;
}


Find and delete?
int IntValueL_find(IntValue *head, int value)
{
//look for integery with value == to parameter being passed in
:while( head!=NULL)
:{
::if(head -> value ==value) {
:::return head;
::}
::head = head-> next;
:}
:return NULL;
}

void IntValueL_delete

Master Struct
struct IntList

int main(int argc, char **argv)
{
IntValue *head=NuLL;
head = IntValueL_insertFront(head, IntValue_create(42));
head = IntValueL_insertFront(head, IntValue_create(64));
head = IntValueL_insertFront(head, IntValue_create(128));
head = IntValueL_insertFront(head, IntValue_create(11));
//looking for and find and print
printf("Value %d is at point %p\n"
}

Alumni Liaison

has a message for current ECE438 students.

Sean Hu, ECE PhD 2009