Edit in JSFiddle

function PeopleCtrl($scope)  {
    $scope.people = [
        {firstName: 'John', lastName: 'Doe', address: {city: 'Chandler', state: 'AZ', zip: 85248}},
        {firstName: 'Jane', lastName: 'Doe', address: {city: 'Chandler', state: 'AZ', zip: 85248}},
        {firstName: 'Johnny', lastName: 'Doe', address: {city: 'Phoenix', state: 'AZ', zip: 85003}}
    ];

    $scope.addNew = function(person) {
        $scope.people.push(person);
        $scope.person = {}; //clear out person object
    }
}
<div ng-app>
    <span class="bold">Binding to a Controller</span>
    <br />
    <span>This demo shows how to interact with a controller.</span>
    <br /><br />
        <div ng-controller="PeopleCtrl">        
            <div id="peopleContainer">
                People:<br /><br />
                <ul>
                    <li ng-repeat="person in people">
                        <span class="bold">{{person.firstName}} {{person.lastName}}</span>
                        <br />
                        {{person.address.city}}, {{person.address.state}}&nbsp;&nbsp;{{person.address.zip}}
                    </li>
                </ul>
            </div>
            <div>
                <br />
                <span class="bold">Add New Person:</span>
                <br /><br />
                <table style="width: 400px;padding:10px;">
                    <tr>
                        <td style="width: 30%;">First Name:</td>
                        <td style="width: 70%;"><input type="text" ng-model="person.firstName" /></td>
                    </tr>
                    <tr>
                        <td style="width: 30%;">Last Name:</td>
                        <td style="width: 70%;"><input type="text" ng-model="person.lastName" /></td>
                    </tr>
                    <tr>
                        <td style="width: 30%;">City:</td>
                        <td style="width: 70%;"><input type="text" ng-model="person.address.city" /></td>
                    </tr>
                    <tr>
                        <td style="width: 30%;">State:</td>
                        <td style="width: 70%;"><input type="text" ng-model="person.address.state" /></td>
                    </tr>
                    <tr>
                        <td style="width: 30%;">Zip:</td>
                        <td style="width: 70%;"><input type="text" ng-model="person.address.zip" /></td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            <button data-ng-click="addNew(person)">Add</button>
                        </td>
                    </tr>
                </table>                
            </div>
</div>
</div>
table
{
    border-collapse: collapse;
    border-spacing: 0px;
}
table td
{
    padding: 8px 8px;
}

.bold { font-weight:bold; }