Using a structure representing a length : Struct Define « Structure « C / ANSI-C

Home
C / ANSI-C
1.assert.h
2.Console
3.ctype.h
4.Data Structure Algorithm
5.Data Type
6.Development
7.File
8.Function
9.Language Basics
10.Macro Preprocessor
11.Math
12.math.h
13.Memory
14.Pointer
15.setjmp.h
16.signal.h
17.Small Application
18.stdio.h
19.stdlib.h
20.String
21.string.h
22.Structure
23.time.h
24.wctype.h
C Tutorial
C++
C++ Tutorial
Visual C++ .NET
C / ANSI-C » Structure » Struct DefineScreenshots 
Using a structure representing a length

#include <stdio.h>
#include <ctype.h>

#define INCHES_PER_FOOT 12
#define FEET_PER_YARD    3

struct Length
{
  unsigned int yards;
  unsigned int feet;
  unsigned int inches;
};

struct Length add(struct Length first, struct Length second);
void show(struct Length length);

int main()
{
  char answer = 'n';
  struct Length length;
  struct Length total = 0,0,0};
  int i = 0;

  length.yards =9;
  length.feet = 10;
  length.inches = 1;
  total = add(total,length);

  show(total);
  printf("\n");
}

struct Length add(struct Length first, struct Length second)
{
  unsigned long inches = 0;
  struct Length sum;
  inches = first.inches + second.inches+
    INCHES_PER_FOOT*(first.feet+second.feet+FEET_PER_YARD*(first.yards+second.yards));
  sum.inches = inches%INCHES_PER_FOOT;
  sum.feet = inches/INCHES_PER_FOOT;
  sum.yards = sum.feet/FEET_PER_YARD;
  sum.feet %= FEET_PER_YARD;
  return sum;
}

void show(struct Length length)
{
  printf("%d yards %d feet %d inches", length.yards,length.feet, length.inches);
}



           
       
Related examples in the same category
1.Using a structure representing a person's name
2.Using a structure to record the count of occurrences of a word
3.How to use struct
4.Exercising the horse: Structure declaration
5.Pointing out the horses: allocate memory for struct
6.Define a simplest struct
7.Define and use a struct
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.