Table of Contents

Basic C Tutorial

Resources

Here are the locations of existing free tutorial content that I have reviewed, and seen fit to refer to:

C Programming

Exercise 1

The first portion of this exercise is to complete the TutorialsPoint C-Environment Setup tutorial phase (but skip the “Try It Option Online” part).
Once that is complete, proceed with:

Remember to have your work reviewed by, as well as to seek help/advice from, your instructor.

Here is a sample Makefile as a kick-start:

PGM = hello

all : $(PGM)
        @echo Done

clean :
        @rm -f $(PGM) *.o

$(PGM) : hello.c
        gcc -g -o $(PGM) hello.c

Exercise 2

Read these sections in the TutorialsPoint tutorial:

… then, read the manpage for printf.

Once complete with these readings, write a program that stores integer values in four different integer variables, and prints each out using the printf function, making sure the name of the variable is shown before the value.
Once you have completed that, read this TutorialsPoint section, and then alter your program to do a number of typical arithmetic operations upon your variables, printing out both a label showing the calculation being done and the result for each.

Exercise 3

Read these sections in the TutorialsPoint tutorial:

… then, alter your program to start with one number (as one of your variables), and compute the result of n2 - 1 for n up to a higher number (as another of your variables). Make sure that the calculation being performed and the result are printed for each iteration.

When that program is complete, read this TutorialsPoint section, and then move your calculations into a function that takes the beginning and ending for your loop as parameters.

Exercise 4

Read this section in the TutorialsPoint tutorial:

… then, refactor your program to use an array of integers for n, and perform the calculation for each of the n in the array.

Once that is complete and working, read this section at TutorialsPoint, and then add a new function that creates a string, fills it with some text, and then iterates over the string to print each character out on a separate line.

Exercise 5

Read this section in the TutorialsPoint tutorial, in this order:

… then, create a new function that declares a local variable of a structure type, which you will also have to define at the top of your source file. The structure should have an integer and a character array of a length suitable for your name. In your function, fill the name field of the structure in with your name, set the integer to a value, then print out both.

Once that is working, refactor this function to take a pointer to your structure type as a parameter, and print out the integer and name from the structure passed in. Initialize a variable of your structure type to pass into the function from where you call it.

Exercise 6

One important aspect of maintaining the simplicity, extensibility, and managability of your code is “modularity”, and there are also various aspects of modularity to pay attention to.

For this exercise, we're going to focus on the arrangement of your code into files, and the respective build mechanics. After reading this TutorialsPoint section on C headers, proceed with:

Exercise 7

Read this section of the TutorialsPoint tutorial: Command Line Arguments, then:

Exercise 8

Read this section of the TutorialsPoint tutorial: C Input & Output, and then refactor your program to get some of its information from input instead of command-line arguments:

Exercise 9

Read this section of the TutorialsPoint tutorial: C File IO, and then refactor your program to determine some of its behavior by values read from a configuration file:

Exercise 10

Read this section of the TutorialsPoint tutorial: C Memory Management, and then refactor your program to save a history of user interaction, as a fifo queue of segments that can be used to dump a history report:


Links: TutorialsTech Info