এই ছোট ক্যালকুলেটর সি প্রোগ্রাম এর ফাংশন scanf("%c",&sign) টি যখন রান করি লাইন একবার দিয়ে, ইনপুট দেওয়া যায় না তার কারন কি? আর যখন দুইবার লাইন দেই তখন রান করে এবং ইনপুট দেওয়া যায়। তার কারন কি? ধন্যবাদ।

#include <stdio.h>

    int main()
    {
        int n1,n2;
        char sign;

        printf("Give Any number: ");
        scanf("%d",&n1);

        printf("Symbol: ");
        scanf("%c",&sign);          /*এই দুটি লাইন*/
        scanf("%c",&sign);


        printf("Give second number: ");
        scanf("%d", &n2);

        if( sign == '+')
        {
            printf(" %d + %d = %d  ", n1,n2, n1+n2);
        }
        else if( sign == '-')
        {
            printf(" %d - %d = %d  ", n1,n2, n1-n2);
        }
        else if ( sign == '*')
        {
            printf(" %d * %d = %d  ", n1,n2, n1*n2);
        }

        return 0;
    }

asked 16 Aug '16, 19:07

7beback's gravatar image

7beback
285


আপনি যখন প্রথম scanf("%d",&n1); এর মাধ্যমে ইনপুট নিয়ে এন্টার চাপেন তখন সেই এন্টার char কে স্কিপ করার জন্য মাঝখানের scanf() ফাংশন ব্যবহার হয়েছে । আপনি scanf() এর জায়গায় getchar() ও ব্যবহার করতে পারেন ।

printf("Symbol: ");
getchar();          /*এই দুটি লাইন*/
scanf("%c",&sign)

getchar() এর কাজ হল একটা char ইনপুট নেয়া ।

permanent link

answered 16 Aug '16, 19:15

menon's gravatar image

menon
3.6k220

এরকম প্রশ্ন আগে কয়েকবার করা হয়েছে। আপনি এই প্রশ্নগুলোর উত্তর দেখুন:

এই সি কোড টায় সমস্যা কি?

http://programabad.com/questions/4909/

scanf() এর পর gets() এর ব্যাবহার নিয়ে প্রশ্ন...

http://programabad.com/questions/4857/scanf-gets?page=1&focusedAnswerId=4859#4859

permanent link

answered 17 Aug '16, 08:28

Najat's gravatar image

Najat
5147

1

ধন্যবাদ ভাই :)

(17 Aug '16, 15:38) 7beback
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×341
×191
×58
×29
×13

question asked: 16 Aug '16, 19:07

question was seen: 450 times

last updated: 17 Aug '16, 15:38