برنامه‌ای به زبان C++ بنویسید که دو رشتهٔ ورودی را دریافت کند و با استفاده از std::strcmp تعیین کند که رشتهٔ اول برابر، کوچکتر یا بزرگ‌تر از رشتهٔ دوم است و نتیجه را چاپ کند.

7.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:21

0.0

برای حل، از هدر و تابع std::strcmp استفاده کنید؛ strcmp مقدار صفر، منفی یا مثبت برمی‌گرداند که به‌ترتیب نشان‌دهندهٔ برابری، کوچکتر یا بزرگ‌تر بودن رشتهٔ اول نسبت به دوم است. می‌توانید رشته‌ها را به‌صورت char[] یا با std::string و متد c_str() دریافت کنید، سپس با دستورات شرطی if/else سه حالت را چاپ کنید. نکات: مطمئن شوید رشته‌ها null-terminated هستند، برای مقایسهٔ حساس به حروف کوچک/بزرگ قبل از strcmp با std::transform یا تابع tolower تمام حروف را یکسان کنید، و برنامه را با g++ کامپایل و اجرا کنید؛ این نوع مقایسه در طراحی مفسرها (مقایسهٔ شناسه‌ها) و پردازش داده‌های متنی در محاسبات عددی کاربرد دارد.

توسط پژوهشگر در 201 روز قبل ساعت 03:21
دسته بندی ها: C Plus Plus C Plus Plus for beginner
sara در 201 روز قبل ساعت 06:43

برای استفاده از std::strcmp باید رشته‌ها null-terminated باشند و مقدار بازگشتی 0 برابر است، منفی برابر است با کوچکتر بودن اول، و مثبت برابر است با بزرگ‌تر بودن. اگر می‌خواهید مقایسه نسبت به حروف حساس نباشد، قبل از strcmp هر دو رشته را به lowercase تبدیل کنید (مثلاً با std::transform یا تابع tolower). می‌توانید ورودی‌ها را با std::string بخوانید و به char* از طریق c_str() بدهید تا با strcmp کار کند. سپس با سه شرط if/else نتایج برابر/کوچکتر/بزرگ‌تر را چاپ کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری