C 程式設計謎題涵蓋斐波那契數列、階乘、漢明距離、陣列最大值和最小值等演算法和資料結構概念,透過解決這些謎題,可以鞏固C 知識,提升演算法理解和程式設計技巧。
C 程式設計謎題集錦:激發思維,提升程式設計層次
##前言
程式設計謎題是激發創造力、提升程式設計技巧的絕佳方式。本文精心挑選了一些 C 程式設計謎題,涵蓋各種程式設計概念和演算法,旨在幫助你深入理解這門強大的語言。謎題1:斐波那契數列
#問題:寫一個C 程序,列印斐波那契數列的前n 個數。
程式碼:
#include <iostream> int main() { int n; std::cout << "Enter the number of Fibonacci numbers to print: "; std::cin >> n; int a = 0, b = 1; std::cout << "Fibonacci Series: "; for (int i = 1; i <= n; i++) { std::cout << a << " "; int c = a + b; a = b; b = c; } std::cout << std::endl; return 0; }
謎題2:階乘
問題:寫一個C 程序,計算給定數字的階乘。
程式碼:
#include <iostream> int main() { int n; std::cout << "Enter the number whose factorial you want to calculate: "; std::cin >> n; int factorial = 1; for (int i = 1; i <= n; i++) { factorial *= i; } std::cout << "Factorial of " << n << " is: " << factorial << std::endl; return 0; }
謎題3:漢明距離
問題:寫一個C 程序,計算兩個二進位數字之間的漢明距離。
程式碼:
#include <iostream> int main() { int n1, n2; std::cout << "Enter two binary numbers: "; std::cin >> n1 >> n2; int distance = 0; while (n1 > 0 || n2 > 0) { if ((n1 % 10) != (n2 % 10)) { distance++; } n1 /= 10; n2 /= 10; } std::cout << "Hamming distance between the two numbers is: " << distance << std::endl; return 0; }
謎題4:陣列最大值與最小值
問題:寫一個C 程序,在給定的陣列中找到最大值和最小值。
#程式碼:
#include <iostream> int main() { int arr[] = {10, 20, 5, 15, 30}; int size = sizeof(arr) / sizeof(arr[0]); int max = arr[0]; int min = arr[0]; for (int i = 1; i < size; i++) { if (arr[i] > max) { max = arr[i]; } if (arr[i] < min) { min = arr[i]; } } std::cout << "Maximum element: " << max << std::endl; std::cout << "Minimum element: " << min << std::endl; return 0; }
結論
#這些謎題旨在挑戰你的程式設計技能,激發你的創造潛力。透過解決這些謎題,你將能夠鞏固你的 C 知識,並提高你的演算法和資料結構的理解。以上是C++ 程式設計謎題片段:激發思維,提升程式設計水平的詳細內容。更多資訊請關注PHP中文網其他相關文章!