آموزش ورودی خروجی (I/O) در برنامه نویسی C
در این آموزش برنامه نویسی سی به کمک مثال های مختلف با تابع ()scanf برای گرفتن مقدار ورودی از کاربر و تابع ()printf برای نمایش به کاربر در خروجی آشنا خواهید شد.
خروجی در زبان C
در برنامه نویسی C، تابع ()printf یکی از اصلی ترین تابع های نمایش در خروجی (Output) است. این تابع، خروجی قالب بندی شده را به صفحه نمایش می فرستد.
مثال ۱: خروجی در C
#include <stdio.h>
int main()
{
// رشته داخل پرانتز را نمایش می دهد
printf(“C Programming”);
return 0;
}
خروجی
C Programming
این برنامه چگونه کار میکند؟
- همه برنامه های معتبر C باید شامل تابع ()main باشند. اجرای کد از این تابع شروع می شود.
- ()printf یک تابع کتابخانه ای برای ارسال خروجی قالب بندی شده به صفحه نمایش است. در اینجا رشته درون کوتیشن ها (“C Programming”) را چاپ می کند.
- برای استفاده از تابع ()printf باید فایل هدر stdio.h را با استفاده از دستور <include <stdio.h# در برنامه وارد کنید.
- دستور ;return 0 در داخل تابع ()main “وضعیت خروج” از برنامه است. این اختیاری است
مثال ۲: خروجی عدد صحیح
#include <stdio.h>
int main()
{
int testInteger = 5;
printf(“Number = %d”, testInteger);
return 0;
}
خروجی
Number = 5
از قالب بندی d% برای چاپ انواع int استفاده می شود. در اینجا d% داخل کوتیشن ها با مقدار متغیر testInteger جایگزین شده است.
مثال ۳: خروجی float و double
#include <stdio.h>
int main()
{
float number1 = 13.5;
double number2 = 12.4;
printf(“number1 = %fn”, number1);
printf(“number2 = %lf”, number2);
return 0;
}
خروجی
number1 = 13.500000
number2 = 12.400000
برای چاپ float از قالب f% و برای مقادیر double از lf% استفاده می شود.
مثال ۴: چاپ کاراکترها
#include <stdio.h>
int main()
{
char chr = ‘a’;
printf(“character = %c”, chr);
return 0;
}
خروجی
character = a
برای چاپ متغیر char از قالب c% استفاده می شود.
ورودی در زبان C
در برنامه نویسیC ، تابع ()scanf یکی از توابع رایج برای گرفتن ورودی (Input) از کاربر است. این تابع مقدار ورودی قالب بندی شده را از یک ورودی استاندارد مانند صفحه کلید می خواند.
مثال ۵: ورودی و خروجی عدد صحیح
#include <stdio.h>
int main()
{
int testInteger;
printf(“Enter an integer: “);
scanf(“%d”, &testInteger);
printf(“Number = %d”,testInteger);
return 0;
}
خروجی
Enter an integer: 4
Number = 4
در این مثال از قالب بندی %d در تابع ()scanf برای تعیین نوع ورودی int از کاربر استفاده شده است. وقتی کاربر یک عدد صحیح وارد کند، آن مقدار در متغیر testInteger ذخیره خواهد شد.
توجه داشته باشید که از testInteger& در تابع ()scanf استفاده می شود. زیرا testInteger& آدرس متغیر testInteger را میدهد و مقدار وارد شده توسط کاربر در این آدرس ذخیره می شود.
مثال ۶: ورودی و خروجی Float و Double
#include <stdio.h>
int main()
{
float num1;
double num2;
printf(“Enter a number: “);
scanf(“%f”, &num1);
printf(“Enter another number: “);
scanf(“%lf”, &num2);
printf(“num1 = %fn”, num1);
printf(“num2 = %lf”, num2);
return 0;
}
خروجی
Enter a number: 12.523
Enter another number: 10.2
num1 = 12.523000
num2 = 10.200000
به ترتیب از قالب های f% و lf% برای float و double استفاده شده است.
مثال ۷: ورودی و خروجی کاراکتر در C
#include <stdio.h>
int main()
{
char chr;
printf(“Enter a character: “);
scanf(“%c”,&chr);
printf(“You entered %c.”, chr);
return 0;
}
خروجی
Enter a character: g
You entered g.
در این برنامه با ورود یک مقدار کاراکتری توسط کاربر، خود کاراکتر ذخیره نمی شود بلکه یک مقدار صحیح یا کد ASCII (اسکی) آن ذخیره خواهد شد.
برای نمایش کاراکتر هم از قالب متنی c% استفاده می شود. اگر از d% برای نمایش کاراکتر استفاده کنید، مقدار ASCII آن چاپ می شود.
مثال ۸: نمایش مقدار ASCII
#include <stdio.h>
int main()
{
char chr;
printf(“Enter a character: “);
scanf(“%c”, &chr);
// کاراکتر نمایش داده می شود %c با قالب بندی
printf(“You entered %c.n”,chr);
// نمایش داده می شود ASCII مقدار %d با قالب بندی
printf(“ASCII value is %d.”, chr);
return 0;
}
خروجی
Enter a character: g
You entered g.
ASCII value is 103.
ورودی/ خروجی چندتایی
برنامه زیر شیوه دریافت چندین ورودی از کاربر و نمایش آنها در خروجی را نشان می دهد.
#include <stdio.h>
int main()
{
int a;
float b;
printf(“Enter integer and then a float: “);
// دریافت چندین مقدار ورودی از کاربر
scanf(“%d%f”, &a, &b);
printf(“You entered %d and %f”, a, b);
return 0;
}
خروجی
Enter integer and then a float: -3
۳٫۴
You entered -3 and 3.400000
قالب بندی ها برای ورودی/ خروجی (I/O)
در جدول زیر لیست انواع داده های رایج در C و قالب بندی های آن ها آورده شده است:
قالب بندی | نوع داده |
%d |
int |
%c |
char |
%f |
float |
%lf |
double |
%hd | short int |
%u |
unsigned int |
%li | long int |
%lli |
long long int |
%lu | unsigned long int |
%llu |
unsigned long long int |
%c | signed char |
%c | unsigned char |
%Lf |
long double |
سلام علیکم
پاسخاگه بخوایم که بعد از متن متغیر هم متن بیاد باید چیکار کنیم؟
char name[60];
scanf(%s,name);
printf(welcome %s, name, !\n);
با سلام و عرض ادب
پاسخبسیار عالی بود. سایر موارد آموزش برنامه نویسی c را لطفا قرار بدهید
تشکر میکنم.