PDA

View Full Version : چرا با زدن enter دریافت ورودی قطع نمیشه؟



fshb_ 1370
سه شنبه 20 مهر 1389, 15:52 عصر
سلام دوستان
من میخوام با زدن enter برنامه دیگه ورودی دریافت نکنه، کد زیر رو نوشتم، ولی کاری که من میخوام انجام نمیده و با زدن enter باز هم به دریافت ورودی ادامه میده.



#include<iostream>
using namespace std;
const int SLEN = 30;
const int Size=10;
struct student
{
char fullname[SLEN];
char hobby[SLEN];
int ooplevel;
};
int getinfo(student pa[],int n);
int main()
{
student pa[Size];
int count=getinfo(pa,Size);
cout<<count;
}
int getinfo(student pa[],int n)
{
int i=0;
cout<<"enter students:\n";
cout<<"pa["<<i<<"].fullname:";
while((cin>>pa[i].fullname)!='\0')
{
cout<<"pa["<<i<<"].hobby:";
cin>>pa[i].hobby;
cout<<"pa["<<i<<"].ooplevel:";
cin>>pa[i].ooplevel;
i++;
cout<<"pa["<<i<<"].fullname:";
}
return i;
}

کجای کد من مشکل داره؟:ناراحت:

r00tkit
سه شنبه 20 مهر 1389, 16:56 عصر
این که نمی شه یه شرط بزار برای یه چیز دیگه تا با ان خروج بشه مثلا" Q

-------------
چون امروز من بدشانسم زیاد به گفته بالا توجه نکن:ناراحت:

fshb_ 1370
سه شنبه 20 مهر 1389, 17:31 عصر
این که نمی شه یه شرط بزار برای یه چیز دیگه تا با ان خروج بشه مثلا" Q


یعنی چی؟ من که نمیتونم با شرط دیگه ای خارج بشم. سوال از من خواسته که با این شرط دریافت ورودی را قطع کنم.

shecarchi
چهارشنبه 21 مهر 1389, 21:03 عصر
کد اسکی اینتر 13 هست و دستوری هم r\ . شما میتونی یه شرط بزاری که اگه getch()==13 برنامه دیگه ادامه پیدا نکنه

fshb_ 1370
چهارشنبه 21 مهر 1389, 22:52 عصر
کد اسکی اینتر 13 هست و دستوری هم r\ . شما میتونی یه شرط بزاری که اگه getch()==13 برنامه دیگه ادامه پیدا نکنه
نه، من یه راه دیگه میخوام، یعنی میخوام بدون استفاده از کد اسکی این برنامه نوشته بشه

Salar Ashgi
چهارشنبه 21 مهر 1389, 23:43 عصر
میخوام بدون استفاده از کد اسکی این برنامه نوشته بشه

چه اجباری به اینکار هست ؟!

fshb_ 1370
پنج شنبه 22 مهر 1389, 07:47 صبح
چه اجباری به اینکار هست ؟!
این یکی از سوالای کتابی هست که میخونم. سوال کتاب این از من خواسته و کد اسکی رو تا این فصل یاد نداده. سوال کتاب گفته با زدن enter دریافت ورودی قطع بشه.
یعنی به فرض اگر خواسته شد که مقدار pa[i].fullname رو وارد کنید و شما enter زدید، دریافت ورودی قطع بشه