Basics of C/C++ Programming

From ICO wiki
Revision as of 00:38, 15 September 2016 by Jtominga (talk | contribs) (Created page with " == Introduction== === Lecturers === Rait Liiv: rait.liiv@itcollege.ee Janno Tomingas: janno.tomingas@itcollege.ee == C == === Lectures === === Practices === ====== Prac...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Introduction

Lecturers

Rait Liiv: rait.liiv@itcollege.ee Janno Tomingas: janno.tomingas@itcollege.ee

C

Lectures

Practices

Practice 1

Console input/output


1. Write a program, that outputs "Hello, World!"

2. Write a program, that asks the user for a number and then writes the number back to the user

3. Write a simple calculator, that supports addition, subtraction, multiplication and division. The program should ask the user for two numbers and the operation to perform and output the result to the console.

Practice 2

Functions, pointers, out variables, function return values as success/error codes


1. Write a function that adds two integers, outputs the result via an out variable and returns 0 to indicate a successful operation.

Hint:

 int add(int a, int b, int* out)
 {
 }


2. Write a function that swaps two integers and returns 0 to indicate a successful operation.

Hint:

 int swap(int* a, int* b)
 {
 }


3. Write a function that reverses a string and returns 0 to indicate a successful operation.

Hint:

 int reverse(char* string, size_t length)
 {
 }


4. Write a function that sorts an array of ints and returns 0 to indicate a successful operation.

Hint:

 int sort(int* string, size_t length)
 {
 }


Practice 3

File input/output, dynamic memory allocation


1. Write a program that outputs the contents of a text file into the console.

Hint:

Always close the file stream after you are done using it.

Make sure to check for error codes.


2. Write a program that reads the contents of a text file into a dynamically sized array and outputs the information into a new file.

Hint:

Use "fseek", "ftell" and "rewind" to find out how large the buffer should be.

Make sure you have enough room for a null terminator.

Remember to free the allocated memory after calling malloc or calloc.

Make sure to check for error codes.


Practice 4