ورودی در c
تابع ورودی داده های از صفحه کلید , ()scanf :
الگوی این تابع در فایل stdio.h قرار دارد.این تابع تمام داده ها را میتواند از ورودی بخواند و آن ها را در حافظه ذخیره کند.در صورت اجرای موفقیت آمیز این تابع , تعداد متغیر هایی را که از ورودی خوانده است برمیگرداند و در صورت بروز خطا , EOF توسط تابع برگردانده میشود.EOF مقداری است که بیانگر عدم اجرای صحیح تابع ()scanf میباشد.تابع ()scanf به صورت زیر مورد استفاده قرار میگیرد:
; (“<عبارت ۲>” , “<عبارت ۱>”)scanf
<عبارت ۲> آدرس متغیر هایی است که باید از ورودی خوانده شوند.
<عبارت ۱> مشخص میکند که مقادیر ورودی چگونه باید خوانده شوند و به چه ترتیبی در متغیر هایی که آدرس آن ها در <عبارت ۲> مشخص شده است قرار میگیرند: # کاراکتر های فرمت : تعیین میکند که چه اطلاعاتی باید از ورودی خوانده شوند و با % شروع میشوند ,مثل d% که برای خواندن اعداد صحیح از ورودی به کار میرود. # کاراکتر های فضای خالی # کاراکتر هایی غیر از فضای خالی و فرمت.
وقتی دستور ()scanf اجرا میشود منتظر می ماند تا داده ها از صفحه کلید وارد شوند و در آخر کلید Enter را فشار میدهیم تا داده ها در متغیر های مربوطه قرار گیرند.به مثال زیر توجه فرمایید:
int x , y ;
float f;
char ch ;
scanf(“%d%d%f%c”,&x,&y,&f,&ch);
کاراکتر های فرمت در c:
ورودی و خروجی کاراکتر ها در c:
معمولا ورودی و خروجی با استفاده از توابع ()scanf و ()printf انجام میشود.برای سهولت کارکردن با کاراکتر ها از توابع دیگری نیز برای دریافت و نمایش کاراکترها استفاده می شود. #توابع ورودی : ()getch() _ getche() _ getchar #توابع خروجی: ()putch() _ putchar .
خواندن کاراکترها با توابع ()getch و ()getche :
این توابع در فایل conio.h قرار دارند و کاراکتری را از ورودی خوانده و برمی گرداند.
;()getch=متغیر
;()getche=متغیر
هنگام اجرای این دستورات , برنامه منتظر میماند تا کلیدی از صفحه کلید فشار داده شود.در این صورت کاراکتر معادل آن کلید در متغیر قرار میگیرد.تابع ()getch روی صفحه نمایش تاثیری ندارد.یعنی با فشار هر کلیدی کاراکتر معادل آن در صفحه نمایش ظاهر نمیشود.تابع ()getche پس از خواندن کاراکتر آن را در صفحه نمایش ظاهر میکند.در این دو تابع نیاز به فشردن کلید Enter نیست.در حالی که هنگام خواندن کاراکتر از ()scanf ,پس از وارد کردن کاراکتر , کلید Enter نیز باید فشار داده شود.
نکته:در صورتی که این دو تابع به صورت زیر مورد استفاده قرار گیرند , تنها منتطر فشاردادن کلیدی از صفحه کلید خواهند بود: ;()getch و ;()getche .
خواندن کاراکتر با تابع ()getchar :
همانند ()getche برای خواندن کاراکتر از صفحه کلید به کار میرود.این تابع در فایل stdio.h قرار دارد.نحوه کاربرد آن به صورت زیر است :
; ()getchar =متغیر
هنگام اجرای این تابع بعد از وارد کردن کاراکتر باید Enter را نیز فشار داد. کاراکتر یا کاراکترهایی که قبل از زدن Enter تایپ شده اند در صفحه خروجی نمایش داده میشوند.
نوشتن کاراکتر با توابع ()putch و ()putchar :
این توابع می توانند یک کاراکتر یا یک متغیر کاراکتری را در صفحه نمایش چاپ کنند .تابع ()putch در فایل conio.h قرار دارد. تابع ()putchar در فایل stdio.h قرار دارد.این دو تابع به صورت زیر به کار میروند.
;( متغیر )putch
;(‘کاراکتر’)putch
;(متغیر)putchar
;(‘کاراکتر’)putchar
سلام ممنونم از آموزش های عالیتون.
با سلام
ببخشید در مثال شعاع دایره printf دوم ۶٫۲f% چه معنی داره؟
با تشکر
این عبارت صرفا برای مشخص کردن طول میدان عدد است . به عبارت دیگر فقط برای زیبایی ظاهری نماش اعداد است.
پس اگه ننویسیم هم اشکالی ایجاد نمیکنه ؟
و ببخشید clrscr() چی هست و کاربردش چیه؟
چرا اینجا conio.h اینجا استفاده کردید؟
نه
این تابع برای پاک کردن صفحه نمایشه.
به خاطر تابع getch
ممنون از سایت خوبتون 🙂
چرا من اجرا میکنم برنامه ی شعاع دایره رو stop working eror میده و بسته میشه جواب بهم نمیده ؟
سلام خسته نباشید
برای دریافت داده از کاربر و قرار دادن مستقیم اون در فیلد بیتی (بدون استفاده از متقییر کمکی) چطوری از scanf استفاده کنیم؟ممنون
خیلی عالی بود.لایک داره
سلام عالی بود فقط میخواستم بژرسم که ایا میشه با زبان سی یک ربات تلگرام ساخت؟
سلام هرچی دستور ران میکنم اجرا نمیشه رو تابع putch اررور میده
سلام خوب هستین من این کد هایه c رو کجا بنویسم
سلام. میخواستم ببینم تو تابع اسکن اف چجوری میتونم تعداد ارقام رو مشخص کنم مثلا اگه کمتر از ده رقم وارد کرد بهش با پرینت اف یه ارور بدیم
امیدوارم کامل تر هم بشود مطالب