← Back to C Course | Chapter 1: Introduction & Basics | Lesson 6 of 21

C Statements

A statement is the smallest complete instruction C executes, and a C program is fundamentally a sequence of declaration, expression, and compound statements executed in order.
Syntax
c
data_type variable_name = value;  // declaration statement
variable_name = expression;        // expression statement
function_name(arguments);          // function call statement

What is a Statement?

A statement is the smallest complete instruction in C that the compiler can execute, such as declaring a variable, calling a function, or evaluating an expression, and a C program is fundamentally a sequence of statements executed in order.

Example: What is a Statement?

c
// Include standard input/output (printf, scanf)
#include <stdio.h>
// Program execution starts in main()
int main() {
	// Declare x and set it to 5
	int x = 5;
	// Print formatted text to the screen
	printf("%d", x);
	// Return 0 to signal that the program finished successfully
	return 0;
}

Expression Statements

An expression statement consists of an expression, like an assignment or a function call, followed by a semicolon, and it's the most common kind of statement, executed purely for its side effect.

Example: Expression Statements

c
// Include standard input/output (printf, scanf)
#include <stdio.h>
// Program execution starts in main()
int main() {
	int x;
	x = 5 + 3;
	// Print formatted text to the screen
	printf("%d", x);
	// Return 0 to signal that the program finished successfully
	return 0;
}

Compound Statements (Blocks)

A compound statement, or block, groups multiple statements together inside curly braces, letting several statements be treated as a single unit wherever the language expects just one statement, such as inside an if or loop.

Example: Compound Statements (Blocks)

c
// Include standard input/output (printf, scanf)
#include <stdio.h>
// Program execution starts in main()
int main() {
	// Declare x and set it to 5
	int x = 5;
	// Check whether x > 0
	if (x > 0) {
		// Print formatted text to the screen
		printf("Positive");
		// Print formatted text to the screen
		printf(", counted as one block");
	}
	// Return 0 to signal that the program finished successfully
	return 0;
}

Declaration Statements

A declaration statement introduces a new variable (or function), specifying its type and name, and optionally an initial value, making that identifier available for use in the statements that follow.

Example: Declaration Statements

c
// Include standard input/output (printf, scanf)
#include <stdio.h>
// Program execution starts in main()
int main() {
	// Declare age and set it to 25
	int age = 25;
	// Print formatted text to the screen
	printf("%d", age);
	// Return 0 to signal that the program finished successfully
	return 0;
}

Statement Termination with Semicolons

Every simple statement in C, apart from compound statements enclosed in braces, must be terminated with a semicolon, which tells the compiler exactly where one instruction ends and the next one begins.

Example: Statement Termination with Semicolons

c
// Include standard input/output (printf, scanf)
#include <stdio.h>
// Program execution starts in main()
int main() {
	// Declare a and set it to 1
	int a = 1;
	// Declare b and set it to 2
	int b = 2;
	// Print formatted text to the screen
	printf("%d", a + b);
	// Return 0 to signal that the program finished successfully
	return 0;
}
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
Common Mistakes
  1. Leaving out the semicolon at the end of a statement like int x = 5, which causes an error on the next line.
  2. Putting a semicolon after if (x > 0);, which makes the empty statement the body so the block always runs.
  3. Using a variable declared inside a { } block after the closing brace, where it is out of scope.

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.