Giter VIP home page Giter VIP logo

hegdenischay / 30-seconds-of-c Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fredsiika/30-seconds-of-c

0.0 1.0 0.0 367 KB

🔌Curated collection of useful C Programming tutorials, snippets, and projects that you can understand in 30 seconds or less.

Home Page: https://fredsiika.github.io/30-seconds-of-c/

License: GNU General Public License v3.0

C 34.35% HTML 22.04% JavaScript 40.59% Makefile 1.49% Shell 1.53%

30-seconds-of-c's Introduction

30-Seconds-of-C-Logo

30 Seconds of C

PRs WelcomeAwesomeLicense


🔌Your plug to a curated collection of useful C Programming tutorials, snippets, and projects that you can understand in 30 seconds or less.



P.S: This repository is a work in progress

Getting Started

  • Use Ctrl + F or command + F to search for a snippet.
  • Contributions welcome, please read the contribution guide.

Motivation for this project The core goal of 30 seconds of C is to provide a public record of my journey to learn c programming. It's my goal to provide a quality resource for both beginners and advanced c progammers/developers. My initial motivation for creating this repository was to use it as a tool to document my journey at the 42 Silicon Valley - an engineering and programming. The contents of this repo are designed to help you write real time C programs on your own.

View contents

Integer

Character

  • char

Floating Point

  • float
  • Double
View contents View contents View contents

Purpose: This repo provides useful tips to understand how to achieve 100% at 42 Silicon Valley exams. A great developer like you 😎, however, should not just memorize the answers.


Create a program that takes a string, and displays the first 'a' character it encounters in it, followed by a newline. If there are no 'a' characters in the string, the program just writes a newline. If the number of parameters is not 1, the program displays 'a' followed by a newline.

$> ./aff_a "abc" | cat -e
a$
$> ./aff_a "dubO a POIL" | cat -e
a$
$> ./aff_a "zz sent le poney" | cat -e
$
$> ./aff_a | cat -e
a$
Answer
#include <unistd.h>

int	main(int argc, char **argv)
{
	if (argc != 2)
		write(1, "a", 1);
	else
	{
		while (*argv[1])
			if (*argv[1] == 'a')
			{
				write(1, "a", 1);
				argv[1]++;
				break;
			}
	}
	write(1, "\n", 1);
	return (0);
}


⬆ Back to top

Write a program that displays all digits in descending order, followed by a newline.

$> ./ft_countdown | cat -e
9876543210$
$>
Answer
#include <unistd.h>

int	main(void)
{
	char c;
	c = '9';
	while (c >= '0')
	{
		write(1, &c, 1);
		c--;
	}
	write(1, "\n", 1);
	return (0);
}


⬆ Back to top

Write a function that displays all digits in ascending order.

Your function must be declared as follows:

void ft_print_numbers(void);

Answer
#include <unistd.h>

int	main(void)
{
	char c;

	c = '0';
	while (c <= '9')
	{
		write(1, &c,1);
		c++;
	}
	write(1, "\n", 1);
	return (0);
}


⬆ Back to top

Additional Learning Resources

If you are new to C Programming, try taking a look at some of these references.

Books


  • ANSI 89 – American National Standards Institute, American National Standard for Information Systems Programming Language C, 1989.
  • Kernighan 78 – B. W. Kernighan and D. M. Ritchie, The C Programming Language, Prentice-Hall: Englewood Cliffs, NJ, 1978. Second edition, 1988.
  • Thinking 90 – C* Programming Guide, Thinking Machines Corp. Cambridge Mass., 1990.
  • Head First C - A complete learning experience for C and structured imperative programming.

Websites


Online Integrated Development Environments (IDEs)

Inspiration for this project

The idea behind 30 Seconds of C was inspired some people who created similar collections in other programming languages and environments. Here are the ones we like the most:

How to Contribute

Do you have a cool idea for a new snippet, or want to add your own tips? Checkout contributing.md.

Collaborators


Fred Siika

Grace Nelore

Credits

Icon made by Smashicons from www.flaticon.com is licensed by CC 3.0 BY.
This site was built using GitHub Pages.


⬆ Back to top

30-seconds-of-c's People

Contributors

bobame avatar fredsiika avatar lalaithan avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.