Viết một hàm đệ quy trong lập trình C để in tất cả các số tự nhiên trong khoảng từ 1 đến n. Cách in tất cả các số tự nhiên từ 1 đến N bằng cách sử dụng đệ quy trong chương trình C. Logic để in tất cả các số tự nhiên trong phạm vi nhất định bằng cách sử dụng đệ quy trong lập trình C.
Thí dụ
Đầu vào
Input lower limit: 1 Input upper limit: 10
Đầu ra
Natural numbers between 1 to 10: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
Kiến thức cần thiết
Lập trình C cơ bản, nếu tuyên bố, chức năng, đệ quy
Tìm hiểu thêm - chương trình để in tất cả các số tự nhiên trong phạm vi đã cho bằng cách sử dụng vòng lặp.
Khai báo chức năng đệ quy để in các số tự nhiên trong phạm vi đã cho
- Trước tiên, chúng ta hãy đặt một cái tên có ý nghĩa cho chức năng của chúng ta, nói
printNaturalNumbers[]
. - Tiếp theo chúng ta cần in số tự nhiên trong phạm vi. Do đó, hàm phải chấp nhận hai tham số, tức là giới hạn bắt đầu và kết thúc để in các số tự nhiên. Đối với chúng tôi, chúng tôi hãy cập nhật tuyên bố chức năng của chúng tôi nói
printNaturalNumbers[int lowerLimit, int upperLimit];
. - Cuối cùng, hàm sẽ in tất cả các số tự nhiên trong phạm vi đã cho không trả về không có gì, tức là
void
.
Tuyên bố chức năng để in tất cả các số tự nhiên trong phạm vi nhất định sẽ trông giống như
Natural numbers between 1 to 10: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,0
Logic để in các số tự nhiên trong phạm vi đã cho bằng cách sử dụng đệ quy
Điều kiện cơ sở của hàm đệ quy để in số tự nhiên là
Natural numbers between 1 to 10: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,1. Đó là điều kiện yêu cầu của chúng tôi để trả lại kiểm soát từ chức năng. Sau khi kiểm tra điều kiện cơ sở, in giá trị của LowerLimit và thực hiện cuộc gọi đệ quy đến hàm
printNaturalNumbers[]
, tức là Natural numbers between 1 to 10: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,3.
/**
* C program to print all natural numbers from 1 to n using recursion
*/
#include
/* Function declaration */
void printNaturalNumbers[int lowerLimit, int upperLimit];
int main[]
{
int lowerLimit, upperLimit;
/* Input lower and upper limit from user */
printf["Enter lower limit: "];
scanf["%d", &lowerLimit];
printf["Enter upper limit: "];
scanf["%d", &upperLimit];
printf["All natural numbers from %d to %d are: ", lowerLimit, upperLimit];
printNaturalNumbers[lowerLimit, upperLimit];
return 0;
}
/**
* Recursively prints all natural number between the given range.
*/
void printNaturalNumbers[int lowerLimit, int upperLimit]
{
if[lowerLimit > upperLimit]
return;
printf["%d, ", lowerLimit];
// Recursively call the function to print next number
printNaturalNumbers[lowerLimit + 1, upperLimit];
}
Đọc thêm - Chương trình tìm tổng số tự nhiên trong phạm vi đã cho bằng cách sử dụng đệ quy.
Enter lower limit: 1 Enter upper limit: 100 All natural numbers from 1 to 100 are: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
Mã hóa hạnh phúc 😉
Viết một chương trình trong C để in 50 số tự nhiên đầu tiên bằng cách sử dụng đệ quy. Trình bày bằng hình ảnh: Giải pháp mẫu: Mã C:C đệ quy: Bài tập-1 với giải pháp
#include
int numPrint[int];
int main[]
{
int n = 1;
printf["\n\n Recursion : print first 50 natural numbers :\n"];
printf["-------------------------------------------------\n"];
printf[" The natural numbers are :"];
numPrint[n];
printf["\n\n"];
return 0;
}
int numPrint[int n]
{
if[n