C Program to Check Weekday or Weekend – Switch Case के साथ Complete Guide

C Program to Check Weekday or Weekend एक ऐसा foundational program है जो हर C language सीखने वाले beginner के लिए बेहद जरूरी है। यह program न केवल switch case की working को practically समझाता है, बल्कि यह भी सिखाता है कि user input के आधार पर decision making कैसे की जाती है। अगर आप अभी-अभी C programming शुरू कर रहे हैं, तो यह program आपकी logic building के लिए एक बेहतरीन starting point है।

इस पोस्ट में हम step-by-step समझेंगे कि कैसे एक simple C program लिखा जाता है जो user से 1 से 7 के बीच एक day number लेता है और यह determine करता है कि वह दिन Weekday है या Weekend। साथ ही हम multiple cases को एक साथ handle करना, default case का सही उपयोग, और break statement की importance भी cover करेंगे।

इस पोस्ट को पढ़ने के बाद आप switch case syntax को confidently use कर पाएंगे, multiple conditions को efficiently manage करना सीखेंगे, और real-world logic को C code में translate करने की क्षमता develop करेंगे। तो चलिए शुरू करते हैं और इस program को पूरी तरह समझते हैं।

C Program to Check Weekday or Weekend – पूरी जानकारी हिंदी में

C language में decision making के लिए switch case एक बहुत ही powerful और clean tool है। C Program to Check Weekday or Weekend इस concept को practically demonstrate करने का सबसे अच्छा तरीका है। आइए पहले यह समझते हैं कि इस program की जरूरत क्यों है और यह कैसे काम करता है।

Program Statement (Problem Definition)

इस program में हमारा लक्ष्य बिल्कुल स्पष्ट है:

  • User से 1 से 7 के बीच एक integer number input लेना
  • अगर number 1 से 5 के बीच है, तो “Weekday” print करना (Monday से Friday)
  • अगर number 6 या 7 है, तो “Weekend” print करना (Saturday और Sunday)
  • अगर number इस range से बाहर है, तो “Invalid day number!” print करना

यह एक real-world scenario है क्योंकि हम अपनी daily life में weekdays और weekends को अलग-अलग तरीके से treat करते हैं।

Switch Case क्या होता है और यहाँ क्यों Use किया गया?

if-else और switch case दोनों decision making के लिए use होते हैं, लेकिन जब conditions किसी एक variable की specific values पर depend करती हों, तो switch case ज्यादा readable और efficient होता है।

Switch Case के फायदे इस Program में

Readability: Code साफ और structured दिखता है, हर case clearly defined होता है।

Multiple Cases एक Block में: Case 1 से 5 तक को एक ही printf() statement से handle किया गया है, जिससे code repetition नहीं होती।

Default Case: Invalid input को handle करने के लिए default case एक safety net की तरह काम करता है।

Program Code – C Program to Check Weekday or Weekend

#include <stdio.h>


int main()
{
    int dayNumber;


    printf("Enter day number: ");
    scanf("%d", &dayNumber);


    // Group multiple cases to classify weekdays and weekends
    switch (dayNumber)
    {
        case 1:
        case 2:
        case 3:
        case 4:
        case 5:
            printf("Weekday\n");
            break;


        case 6:
        case 7:
            printf("Weekend\n");
            break;


        default:
            printf("Invalid day number!\n");
    }


    return 0;
}

यह program simple है लेकिन इसके अंदर कई important concepts छुपे हुए हैं जो हर programmer को समझने चाहिए।

Program Output – तीनों Scenarios

Example 1 – Weekday Input

▶️ Output Result
Enter day number: 3 Weekday

Example 2 – Weekend Input

▶️ Output Result
Enter day number: 6 Weekend

Example 3 – Invalid Input

▶️ Output Result
Enter day number: 9 Invalid day number!

तीनों outputs clearly दिखाते हैं कि program हर condition को सही तरीके से handle कर रहा है।

Code Explanation – Line by Line समझिए

1. Header File Include करना

#include <stdio.h>

stdio.h (Standard Input Output) header file को include करना जरूरी है क्योंकि इसमें printf() और scanf() functions define होते हैं। इन functions के बिना हम user से input नहीं ले सकते और output नहीं दिखा सकते।

2. Variable Declaration

int day_number;

day_number नाम का एक integer variable declare किया गया है। यह variable user द्वारा enter किए गए number को store करेगा। Integer type इसलिए use किया क्योंकि day numbers हमेशा whole numbers होते हैं।

3. User से Input लेना

printf("Enter day number: ");
scanf("%d", &day_number);

printf() screen पर message display करता है और scanf() user का input read करके day_number variable में store करता है। %d format specifier integer values के लिए use होता है और & operator variable का memory address provide करता है।

4. Switch Statement की Working

switch (day_number)

Switch statement day_number की value को check करता है और उसे सभी defined cases से match करने की कोशिश करता है।

5. Multiple Cases को Group करना (Fall-Through)

case 1:
case 2:
case 3:
case 4:
case 5:
	printf("Weekday\n");
	break;

यह C programming का एक बहुत important concept है जिसे fall-through कहते हैं। जब किसी case में break नहीं होता, तो program अगले case में automatically चला जाता है। यहाँ हमने इसी technique का फायदा उठाया है — case 1 से 5 तक सभी cases बिना break के लिखे गए हैं, इसलिए कोई भी number 1-5 के बीच हो, program “Weekday” print करेगा।

6. Weekend Cases

case 6:
case 7:
	printf("Weekend\n");
	break;

Same technique से case 6 और 7 को handle किया गया है। Break statement यहाँ जरूरी है ताकि program default case में न जाए।

7. Default Case – Invalid Input Handler

default:

printf(“Invalid day number!\n”);

Default case तब execute होता है जब user का input किसी भी defined case से match नहीं करता। यह error handling का एक basic लेकिन effective तरीका है।

8. Return Statement

return 0;

return 0; program की successful execution को indicate करता है। Operating system को यह signal मिलता है कि program बिना किसी error के complete हुआ।

Program को और बेहतर कैसे बनाएं?

C Program to Check Weekday or Weekend को हम कुछ modifications से और भी useful बना सकते हैं:

Day Name भी Print करें

switch (day_number)
{
	case 1: printf("Monday - Weekday\n"); break;
	case 2: printf("Tuesday - Weekday\n"); break;
	case 3: printf("Wednesday - Weekday\n"); break;
	case 4: printf("Thursday - Weekday\n"); break;
	case 5: printf("Friday - Weekday\n"); break;
	case 6: printf("Saturday - Weekend\n"); break;
	case 7: printf("Sunday - Weekend\n"); break;
	default: printf("Invalid day number!\n");
}

इस version में user को exact day name भी पता चलेगी, जो program को ज्यादा informative बनाती है।

If-Else Version (Comparison के लिए)

if (day_number >= 1 && day_number <= 5)
	printf("Weekday\n");
else if (day_number == 6 || day_number == 7)
	printf("Weekend\n");
else
	printf("Invalid day number!\n");

यह same output देगा लेकिन switch case version ज्यादा organized और readable है जब specific values के साथ काम करना हो।

Common Mistakes जो Beginners करते हैं

इस program को लिखते समय beginners अक्सर कुछ गलतियाँ करते हैं:

Break statement भूलना: अगर break न लगाएं तो program सभी cases execute कर देगा जो गलत output देगा।

Default case छोड़ना: Invalid input को handle न करने से program unexpected behavior दिखा सकता है।

& operator भूलना: scanf() में & न लगाने से program crash हो सकता है।

Integer के बजाय Float use करना: Day numbers always integers होते हैं, float use करने से comparison issues आ सकती हैं।

Real-World Application

यह program real-world scenarios में भी काफी useful है। उदाहरण के लिए:

एक attendance system में weekday और weekend की अलग-अलग rules होती हैं। एक scheduling application में weekdays पर office hours और weekends पर different timings apply होती हैं। एक payroll system में weekday और weekend के लिए अलग pay rates calculate की जाती हैं।

इन सभी situations में इसी तरह के logic का उपयोग होता है, जो दिखाता है कि यह simple-looking program actually कितना practically relevant है।

Conclusion ( निष्कर्ष )

C Program to Check Weekday or Weekend एक ऐसा program है जो देखने में simple लगता है लेकिन इसके अंदर C programming के कई important concepts — switch case, fall-through, break statement, default case, और user input handling — एक साथ practice करने का मौका देता है। अगर आप इस program को अच्छी तरह समझ लेते हैं, तो आपकी decision making logic काफी strong हो जाएगी और आप और complex programs भी आसानी से लिख पाएंगे। इस program को खुद type करें, compile करें, और अलग-अलग inputs देकर test करें — यही सबसे अच्छा तरीका है इसे याद रखने का।अगर आपको यह post helpful लगी हो, तो इसे अपने fellow learners के साथ जरूर share करें। नीचे comment करके बताएं कि आपको कौन सा concept सबसे interesting लगा या अगर कोई doubt हो तो पूछें — हम जरूर help करेंगे। C programming की और ऐसी ही informative posts पढ़ने के लिए हमारे blog को follow करते रहें और अपनी programming journey को और मजबूत बनाते रहें।

Frequently Asked Questions

Q 1: Switch case और if-else में क्या अंतर है?
Ans: Switch case specific values को check करता है और ज्यादा readable code produce करता है जब एक variable की multiple fixed values check करनी हों। If-else range-based conditions और complex logical expressions के लिए ज्यादा suitable है। Performance के मामले में, switch case compiler द्वारा jump table की तरह optimize किया जा सकता है, जो इसे कुछ cases में if-else से faster बनाता है।
Q 2: Break statement क्यों जरूरी है switch case में?
Ans: Break statement switch block को उस point पर exit करा देता है जहाँ यह लगा होता है। अगर break न हो, तो fall-through होता है यानी program matched case के बाद वाले सभी cases को भी execute करता रहता है। हमारे program में हमने intentionally fall-through का उपयोग cases 1-5 को group करने के लिए किया, लेकिन अंत में break जरूर लगाया।
Q 3: Default case लगाना जरूरी है क्या?
Ans: Technically default case optional है, लेकिन इसे हमेशा लगाना best practice माना जाता है। यह unexpected या invalid inputs को gracefully handle करता है और program को crash होने से बचाता है। Professional programming में error handling बहुत जरूरी होती है।
Q 4: क्या switch case में string values use कर सकते हैं?
Ans: C language में switch case केवल integer और character values के साथ काम करता है। Strings को directly switch case में use नहीं किया जा सकता। अगर आप string-based conditions check करना चाहते हैं, तो if-else और strcmp() function का उपयोग करना होगा।
Q 5: इस program को if-else से भी लिख सकते हैं?
Ans: हाँ, बिल्कुल। if (day_number >= 1 && day_number <= 5) से weekday check किया जा सकता है और else if (day_number == 6 || day_number == 7) से weekend। दोनों approaches काम करती हैं, लेकिन specific integer values check करने के लिए switch case ज्यादा clean और maintainable code produce करता है।

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top