w3resource

C Programming Exercises, Practice, Solution

What is C Programming Language?

C is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. C was originally developed by Dennis Ritchie between 1969 and 1973 at Bell Labs. It has since become one of the most widely used programming languages of all time, with C compilers from various vendors available for the majority of existing computer architectures and operating systems.

The best way we learn anything is by practice and exercise questions. We have started this section for those (beginner to intermediate) who are familiar with C programming.

Hope, these exercises help you to improve your C programming coding skills. Currently, following sections are available, we are working hard to add more exercises. Please refer to this page for important C snippets, code, and examples before starting the exercises. Happy Coding!

List of C Programming Exercises :

[ Want to contribute to C exercises? Send your code (attached with a .zip file) to us at w3resource[at]yahoo[dot]com. Please avoid copyrighted materials.]

Do not submit any solution of the above exercises at here, if you want to contribute go to the appropriate exercise page.

Popularity of Programming Language
Worldwide, Oct 2022 compared to a year ago:

`
Rank Change Language Share Trend
1 Python 28.3 % -1.8 %
2 Java 17.2 % -0.9 %
3 Javascript 9.69 % +0.4 %
4 C# 7.2 % -0.2%
5 C/C++ 6.45 % -0.4 %
6 PHP 5.39 % -0.9 %
7 R 4.03 % +0.3 %
8 up arrow TypeScript 2.17 % +1.1 %
9 down arrow Objective-C 2.16 % +0.2 %
10 up arrow Go 2.08% +0.5 %
11 down arrow Swift2.05% +0.4 %
12 down arrow Kotlin 1.81 % +0.1 %
13 up arrow Rust 1.57 % +0.8 %
14 down arrow Matlab 1.52 % +0.1 %
15 Ruby 1.13 % +0.1%
16 down arrow VBA 0.96 % -0.3 %
17 up arrow Scala 0.78 % +0.3 %
18 up arrow Ada 0.76 % +0.2 %
19 down arrow Dart 0.75 % +0.1 %
20 down arrow Visual Basic 0.64 % -0.2 %
21 up arrow Lua 0.61 % +0.2 %
22 down arrow Abap 0.48 % -0.1 %
23 down arrow Groovy 0.44 % -0.1 %
24 up arrow Cobol 0.32 % -0.0 %
25 Julia 0.28 % -0.1 %
26 down arrow Perl 0.28 % -0.1 %
27 Haskell 0.28 % +0.0 %
28 Delphi/Pascal 0.14 % +0.1 %

Source : https://pypl.github.io/PYPL.html

TIOBE Index for September 2022

Sep 2022 Sep 2021 Change Programming Language Ratings Change
1 2 up arrow Python 15.74% +4.07%
2 1 down arrow C 13.96% +2.13%
3 3 Java 11.72% +0.60%
4 4 C++ 9.76% +2.63%
5 5 C# 4.88% -0.89%
6 6 Visual Basic 4.39% -0.22%
7 7 JavaScript 2.82% +0.27%
8 8 Assembly language 2.49% +0.07%
9 10 up arrow SQL 2.01% +0.21%
10 9 down arrow PHP 1.68% -0.17%
11 24 up arrow Objective-C 1.49% +0.86%
12 14 up arrow Go 1.16% +0.03%
13 20 up arrow Delphi/Object Pascal 1.09% +0.32%
14 16 up arrow MATLAB 1.06% +0.04
15 17 up arrow Fortan 1.03% +0.02%
16 15 down arrow Swift 0.98% -0.09%
17 11 down arrow Classic Visual Basic 0.98% -0.55%
18 18   R 0.95% -0.02%
19 19 Perl 0.72% -0.06%
20 13 down arrow Ruby 0.66% -0.62%

Source : https://www.tiobe.com/tiobe-index/

List of Exercises with Solutions :



Share this Tutorial / Exercise on : Facebook and Twitter

C Programming: Tips of the Day

~x + ~y == ~(x + y) is always false?

Assume for the sake of contradiction that there exists some x and some y (mod 2n) such that

~(x+y) == ~x + ~y

By two's complement*, we know that,

-x == ~x + 1
<==>  -1 == ~x + x 

Noting this result, we have,

~(x+y) == ~x + ~y
<==>  ~(x+y) + (x+y) == ~x + ~y + (x+y)
<==>  ~(x+y) + (x+y) == (~x + x) + (~y + y)
<==>  ~(x+y) + (x+y) == -1 + -1
<==>  ~(x+y) + (x+y) == -2
<==>  -1 == -2 

Hence, a contradiction. Therefore, ~(x+y) != ~x + ~y for all x and y (mod 2n).

*It is interesting to note that on a machine with one's complement arithmetic, the equality actually holds true for all x and y. This is because under one's complement, ~x = -x. Thus, ~x + ~y == -x + -y == -(x+y) == ~(x+y).

Ref : https://bit.ly/3EcHJb3