যখন আমি টেস্ট কেস নিয়ে একাধিক স্ট্রিং ইনপুট নেই ... তখন টেস্ট কেস ইনপুট নেওয়ার পর ইন্টার চাপলে কোন স্ট্রিং ইনপুট নেওয়ার আগেই Case 1: চলে আসে ...... এটার সমাধান কি ? gets(),scanf("%[^\n]"); দুই ভাবেই ট্রাই করছি সেম সমস্যা?

asked 22 Oct '16, 18:25

Return_Zero's gravatar image

Return_Zero
2077


এরকম ক্ষেত্রেঃ

scanf("%d", &t)

for(i=0; i<t; i++)

    gets(s[i])

প্রথমবার যখন টেস্ট কেইস নাম্বার দিয়ে এন্টার চাপা হয় তখন একটা খালি স্ট্রিং ও s[0] তে ইনপুট নেওয়া হয়ে যায় বলে এমনটা হয়। scanf("%d", &t) -র পর একটি getchar() দিয়ে ঐ এন্টারের খালি লাইনটি নিয়ে নিলে এই সমস্যা থাকে না। অথবা এভাবেও করা যায়ঃ

scanf("%d\n", &t);
permanent link

answered 22 Oct '16, 18:39

Najat's gravatar image

Najat
5398

1

many many thanks vai....

(22 Oct '16, 18:45) Return_Zero
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:

×90
×17
×1
×1

question asked: 22 Oct '16, 18:25

question was seen: 929 times

last updated: 22 Oct '16, 18:45