# 1: Data Types, IO

## ১.১ ডেটা টাইপ, ভেরিয়েবল (ডিক্লারেশন, অ্যাসাইনমেন্ট, ইনিশিয়ালাইজেশন), ফরমেট স্পেসিফায়ার, আউটপুট, ইনপুট (১১)

1. \[1] একটি ইন্টিজার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর। (Variable Declaration, Assignment Operator, Format Specifier) (Garbage Value Demonstration)
2. \[2] একটি ইন্টিজার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর। (Assignment on Declaration)
3. \[3] একটি ইন্টিজার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
4. \[4] একটি ফ্লোট ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ/অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
5. \[5] একটি ডাবল ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ/অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
6. \[6] একটি ক্যারেক্টার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ/অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
7. \[7] একটি ফ্লোট ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
8. \[8] একটি ডাবল ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
9. \[9] একটি ক্যারেক্টার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।
10. \[10] একটি ইন্টিজার এবং একটি ইন্টিজার/ফ্লোট/ডাবল/ক্যারেক্টার ভ্যারিয়েবল এর ভ্যালু ইনপুট নাও ও প্রিন্ট কর।
11. \[11] একটি ক্যারেক্টার এবং একটি ইন্টিজার/ফ্লোট/ডাবল/ক্যারেক্টার ভ্যারিয়েবল এর ভ্যালু ইনপুট নাও ও প্রিন্ট কর।

## সমাধান

### \[1] একটি ইন্টিজার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর। <a href="#id-1" id="id-1"></a>

&#x20;(Variable Declaration, Assignment Operator, Format Specifier) (Garbage Value Demonstration)

{% tabs %}
{% tab title="Declare, Assignment, Print" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int integer_var; // Declare an integer variable
    
    integer_var = 50; // Assign the value 50 to the integer variable
    
    printf("%d", integer_var); // Print the value of the integer variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Garbage Value" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int integer_var; // Declare an integer variable
    
    //integer_var = 50; // Assign the value 50 to the integer variable
    
    printf("%d", integer_var); // Print the value of the integer variable
    // Variable stores garbage value, unless it is assigned or initialized.
    
    return 0;
}
```
{% endcode %}
{% endtab %}
{% endtabs %}

### \[2] একটি ইন্টিজার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর। <a href="#id-1" id="id-1"></a>

(Assignment on Declaration)

{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int integer_var = 50; // Initialize (Declare+Assignment) an integer variable
    
    printf("%d", integer_var); // Print the value of the integer variable

    return 0;
}
```
{% endcode %}

### \[3] একটি ইন্টিজার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর। <a href="#id-1" id="id-1"></a>

{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int integer_var; // Declare an integer variable
    
    scanf("%d", &integer_var); // Input the value for the integer variable
    printf("%d", integer_var); // Print the value of the integer variable

    return 0;
}
```
{% endcode %}

### \[4] একটি ফ্লোট ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ/অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।

{% tabs %}
{% tab title="Assignment" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    float float_var; // Declare a float variable
    
    float_var = 3.14f; // Assign the value 3.14 to the float variable
    // f or F is used as a suffix to float literal.
    
    printf("%f\n", float_var); // Print the value of the float variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Initialization" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    float float_var = 3.14159f; // Initialize afloat variable
        
    printf("%f\n", float_var); // Print the value of the float variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}
{% endtabs %}

### \[5] একটি ডাবল ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ/অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।

{% tabs %}
{% tab title="Assignment" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    double double_var; // Declare a double variable
    
    double_var = 2.71828; // Assign the value 2.71828 to the double variable
    // no suffix is required for double literal.
    
    printf("%lf\n", double_var); // Print the value of the double variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Initialization" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    double double_var = 3.14159; // Initialize a double variable
    
    printf("%lf\n", double_var); // Print the value of the double variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}
{% endtabs %}

### \[6] একটি ক্যারেক্টার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনিশিয়ালাইজ/অ্যাসাইন, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।

{% tabs %}
{% tab title="Assignment" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char char_var; // Declare a character variable
    
    char_var = 'A'; // Assign the value 'Z' to the character variable
    
    printf("%c\n", char_var); // Print the value of the character variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Initialization" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char char_var= 'A'; // Initialize the character variable
    
    printf("%c\n", char_var); // Print the value of the character variable
    
    return 0;
}
```
{% endcode %}
{% endtab %}
{% endtabs %}

### \[7] একটি ফ্লোট ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।

{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    float float_var;

    scanf("%f", &float_var); // Input the value for the float variable
    
    printf("%f\n", float_var);

    return 0;
}
```
{% endcode %}

### \[8] একটি ডাবল ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।

{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    double double_var;
    
    scanf("%lf", &double_var); // Input the value for the double variable

    printf("%lf\n", double_var);

    return 0;
}
```
{% endcode %}

### \[9] একটি ক্যারেক্টার ভ্যারিয়েবল তৈরী, ভ্যারিয়েবল এ ভ্যালু ইনপুট নাও, ও ভ্যারিয়েবল এর ভ্যালু প্রিন্ট কর।

{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char char_var;
    
    scanf("%c", &char_var); // Note the space before %c to ignore any whitespace

    printf("%c\n", char_var);

    return 0;
}
```
{% endcode %}

### \[10] একটি ইন্টিজার এবং একটি ইন্টিজার/ফ্লোট/ডাবল/ক্যারেক্টার ভ্যারিয়েবল এর ভ্যালু ইনপুট নাও ও প্রিন্ট কর।

{% tabs %}
{% tab title="Integer+Integer" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int a, b;
    
    scanf("%d%d", &a, &b);
    printf("%d %d\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Integer+Float" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int a;
    float b;
    
    scanf("%d%f", &a, &b);
    printf("%d %f\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Integer+Double" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int a;
    double b;
    
    scanf("%d%lf", &a, &b);
    printf("%d %lf\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Integer+Character" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    int a;
    char b;
    
    scanf("%d %c", &a, &b);
    printf("%d %c\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}
{% endtabs %}

### \[11] একটি ক্যারেক্টার এবং একটি ইন্টিজার/ফ্লোট/ডাবল/ক্যারেক্টার ভ্যারিয়েবল এর ভ্যালু ইনপুট নাও ও প্রিন্ট কর।

{% tabs %}
{% tab title="Character+Integer" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char a;
    int b;
    
    scanf(" %c %d", &a, &b);
    printf("%c %d\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Character+Float" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char a;
    float b;
    
    scanf(" %c %f", &a, &b);
    printf("%c %f\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Character+Double" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char a;
    double b;
    
    scanf(" %c %lf", &a, &b);
    printf("%c %lf\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}

{% tab title="Character+Character" %}
{% code lineNumbers="true" %}
```c
#include<stdio.h>
int main(){
    char a, b;
    
    scanf(" %c %c", &a, &b);
    printf("%c %c\n", a, b);

    return 0;
}
```
{% endcode %}
{% endtab %}
{% endtabs %}
