c語言習題1124

  1. 分別定義函數求圓的面積和周長。

  2. 寫一個函數,分別求三個數當中的最大數。

  3. 寫一個函數,計算輸入n個數的乘積

  4. 一個判斷素數的函數,在主函數輸入一個整數,輸出是否為素數的信息

  5. 寫一個函數求n!?,利用該函數求1!+2!+3!+4!+。。。+10!的和。

  6. Sn=1+1/1!+1/2!+1/3!+1/4!+…+1/n!,主函數中輸入n值,求sn的結果。

  7. 寫一個函數輸出斐波那契數列前10項,并求和

  8. 8、定義一個求平均成績的函數,實現在一個一維數組score內放5個學生成績,調用函數求得平均成績

  9. 有兩個班級,分別有5和8名學生,定義average(int b[],int n)函數,調用average函數,分別求這兩個班的學生的平均成績。

  10. 定義一個函數,實現對字符串的逆序打印。

  11. 從鍵盤為a[5][2]整型數組輸入10個整數,調用函數找出該二維數組當中的最小值、最大值、平均值,并輸出

  12. 寫一個函數,使給定的3*3的二維數組轉置,即行列互換。

  13. 編寫函數求區間[100,500]中所有的回文數。

  14. (附加題)輸入4個學生3門課的成績,分別用函數實現下列功能:

?

//1、分別定義函數求圓的面積和周長。
#include<stdio.h>
#define pi 3.14
double mj(double r){return pi*r*r;
}
double zc(double r){return 2 * pi * r;
}
int main(){double r;printf("輸入圓的半徑:");scanf("%lf", &r);printf("圓的面積為:%.2f\n", mj(r));printf("圓的周長為:%.2f\n", zc(r));return 0;}//2、寫一個函數,分別求三個數當中的最大數。
#include <stdio.h>
int findmax(int a, int b, int c){int max = a;if (b > max){max = b;}if (c > max){max = c;}return max;
}int main(){int x, y, z;printf("請輸入三個數字:");scanf("%d %d %d", &x, &y, &z);printf("最大的數為:%d\n", findmax(x, y, z));return 0;
}//3、寫一個函數,計算輸入n個數的乘積
#include <stdio.h>
int cj(int n){int result = 1;int num;for(int i = 0; i < n; i++){printf("請輸入第%d個數:", i + 1);scanf("%d", &num);result *= num;}return result;
}
int main(){int num;printf("請輸入n的值:");scanf("%d", &num);printf("結果為:%d\n", cj(num));
}//4.一個判斷素數的函數,在主函數輸入一個整數,輸出是否為素數的信息
#include <stdio.h>
#include <stdbool.h>
bool sushu(int num){if (num <= 1){return false;}for (int i = 2; i*i <= num; i++){if (num%i == 0){return false;}}return true;
}
int main(){int num;printf("請輸入一個整數:");scanf("%d", &num);if (sushu(num)){printf("%d是素數\n", num);}else{printf("%d不是素數\n", num);}return 0;
}//5.寫一個函數求n!, 利用該函數求1! + 2! + 3! + 4! + 。。。 + 10!的和
#include<stdio.h>
int jc(int n){if (n == 0 || n == 1){return 1;}else{return n*jc(n - 1);}
}
int main(){int sum = 0;for (int i = 1; i <= 10; i++){sum += jc(i);}printf("sum=%d\n", sum);return 0;
}//6.Sn = 1 + 1 / 1! + 1 / 2! + 1 / 3! + 1 / 4! + … + 1 / n!,
//主函數中輸入n值,求sn的結果。
#include <stdio.h>double hanshu(int n) {double sum = 0;double fenzi = 1;for (int i = 1; i <= n; i++) {fenzi *= i;sum += 1 / fenzi;}return sum + 1;
}int main() {int n;printf("enter n: ");scanf("%d", &n);printf("sum= %6lf\n",hanshu(n));return 0;
}//7、寫一個函數輸出斐波那契數列前10項,并求和
#include<stdio.h>
int fib(int n){if (n == 1 || n == 2)return 1;elsereturn fib(n - 1) + fib(n - 2);
}
int main(){int n = 10, i, j, sum = 0;for (i = 1, j = 0; i <= n; i++, j++){if (j % 2 == 0 && j != 0)printf("\n");printf("%d\t", fib(i));sum += fib(i);}printf("\nsum=%d\n", sum);
}//8、定義一個求平均成績的函數,實現在一個一維數組score內放5個學生成績,
//調用函數求得平均成績
#include <stdio.h>double averageScore(int score[], int n) {int sum = 0;for (int i = 0; i < n; i++) {sum += score[i];}return (double)sum / n;
}int main() {int score[5];printf("請輸入5個學生成績:\n");for (int i = 0; i < 5; i++) {scanf("%d", &score[i]);}double avg = averageScore(score, 5);printf("平均成績為:%.2lf\n", avg);return 0;
}//9、有兩個班級,分別有5和8名學生,定義average(int b[], int n)函數,
//調用average函數,分別求這兩個班的學生的平均成績。
#include <stdio.h>double average(int b[], int n) {int sum = 0;for (int i = 0; i < n; i++) {sum += b[i];}return (double)sum / n;
}int main() {int class1[5] = { 85, 90, 88, 92, 87 };int class2[8] = { 78, 85, 90, 92, 88, 75, 80, 86 };double avg1 = average(class1, 5);double avg2 = average(class2, 8);printf("第一個班的平均成績為:%.2lf\n", avg1);printf("第二個班的平均成績為:%.2lf\n", avg2);return 0;
}//10、定義一個函數,實現對字符串的逆序打印。
#include <stdio.h>
#include <string.h>void reversePrint(char *str) {int length = strlen(str);for (int i = length - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");
}int main() {char str[100];printf("輸入一個字符串:");scanf("%s", str);printf("原有字符串:%s\n", str);printf("逆序后的字符串:");reversePrint(str);return 0;
}//11、從鍵盤為a[5][2]整型數組輸入10個整數,
//調用函數找出該二維數組當中的最小值、最大值、平均值,并輸出
#include <stdio.h>void findMinMaxAvg(int a[5][2]) {int min = a[0][0];int max = a[0][0];int sum = 0;for (int i = 0; i < 5; i++) {for (int j = 0; j < 2; j++) {if (a[i][j] < min) {min = a[i][j];}if (a[i][j] > max) {max = a[i][j];}sum += a[i][j];}}double avg = (double)sum / 10;printf("二維數組:\n");for (int i = 0; i < 5; i++) {for (int j = 0; j < 2; j++) {printf("%d ", a[i][j]);}printf("\n");}printf("最小值:%d\n", min);printf("最大值:%d\n", max);printf("平均值:%.2lf\n", avg);
}int main() {int a[5][2];printf("請輸入10個整數:\n");for (int i = 0; i < 5; i++) {for (int j = 0; j < 2; j++) {scanf("%d", &a[i][j]);}}findMinMaxAvg(a);return 0;
}//12、寫一個函數,使給定的3 * 3的二維數組轉置,即行列互換。
#include <stdio.h>void transpose(int arr[3][3]) {int temp;for (int i = 0; i < 3; i++) {for (int j = i + 1; j < 3; j++) {temp = arr[i][j];arr[i][j] = arr[j][i];arr[j][i] = temp;}}
}int main() {int arr[3][3] = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };printf("轉置前的數組:\n");for (int i = 0; i < 3; i++) {for (int j = 0; j < 3; j++) {printf("%d ", arr[i][j]);}printf("\n");}transpose(arr);printf("轉置后的數組:\n");for (int i = 0; i < 3; i++) {for (int j = 0; j < 3; j++) {printf("%d ", arr[i][j]);}printf("\n");}return 0;
}//13、編寫函數求區間[100, 500]中所有的回文數。
#include <stdio.h>
int huiwen(int n){int flag = 1;int g, b;g = n % 10;b = n / 100;if (g == b)flag = 1;else{flag = 0;return flag;}
}
int  main(){int i;for (i = 100; i <= 500; i++){if (huiwen(i))printf(" %d", i);}
}//14.輸入4個學生3門課的成績,分別用函數實現下列功能:
#include <stdio.h>// 計算所有分數的平均值
float calculateTotalAverage(int scores[][3], int numStudents) {float total = 0;for (int i = 0; i < numStudents; i++) {for (int j = 0; j < 3; j++) {total += scores[i][j];}}return total / (numStudents * 3);
}// 計算每個學生的平均分
void calculateStudentAverages(int scores[][3], int numStudents) {printf("每個學生的平均分:\n");for (int i = 0; i < numStudents; i++) {float average = 0;for (int j = 0; j < 3; j++) {average += scores[i][j];}average /= 3;printf("學生 %c 的平均分為 %.2f\n", 'A' + i, average);}
}// 計算每門課程的平均分
void calculateSubjectAverages(int scores[][3], int numStudents) {printf("每門課程的平均分:\n");for (int j = 0; j < 3; j++) {float average = 0;for (int i = 0; i < numStudents; i++) {average += scores[i][j];}average /= numStudents;printf("第 %d 門課程的平均分為 %.2f\n", j + 1, average);}
}int main() {int scores[4][3] = {{ 80, 90, 70 },{ 88, 76, 100 },{ 90, 90, 70 },{ 100, 70, 90 }};float totalAverage = calculateTotalAverage(scores, 4);printf("所有分數的平均值為 %.2f\n", totalAverage);calculateStudentAverages(scores, 4);calculateSubjectAverages(scores, 4);return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/166744.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/166744.shtml
英文地址,請注明出處:http://en.pswp.cn/news/166744.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

功率半導體器件CV測試系統

概述 電容-電壓(C-V)測量廣泛用于測量半導體參數&#xff0c;尤其是MOS CAP和MOSFET結構。MOS(金屬-氧化物-半導體)結構的電容是外加電壓的函數&#xff0c;MOS電容隨外加電壓變化的曲線稱之為C-V曲線&#xff08;簡稱C-V特性&#xff09;&#xff0c;C-V 曲線測試可以方便的確…

opencv-使用 Haar 分類器進行面部檢測

Haar 分類器是一種用于對象檢測的方法&#xff0c;最常見的應用之一是面部檢測。Haar 分類器基于Haar-like 特征&#xff0c;這些特征可以通過計算圖像中的積分圖來高效地計算。 在OpenCV中&#xff0c;Haar 分類器被廣泛用于面部檢測。以下是一個簡單的使用OpenCV進行面部檢測…

鴻蒙系統使用hdc_std.exe使用身份證讀卡器等外設USB獲得權限方法

hdc_std.exe是OpenHarmony 的命令行工具&#xff0c;由于使用的開源鴻蒙開發板上面沒有文件管理器&#xff0c;所以無法通過U盤等方式進行安裝.hap應用。 下面是使用hdc_std.exe安裝身份證讀卡器的步驟&#xff1a; 1、hdc_std.exe放桌面&#xff0c;然后WINR&#xff0c;打開…

CBTC 2023氫能展倒計時6天,最新同期會議活動Plus版發布

隨著時間的推移&#xff0c;CBTC2023深圳氫能技術展覽會即將拉開序幕。這場盛會將于11月30日在深圳福田會展中心盛大開幕&#xff0c;以“以儲賦能&#xff0c;智造未來”為主題&#xff0c;旨在搭建一個商務交流、供需合作、創新產品發布的平臺&#xff0c;讓氫能全產業鏈之間…

尋找質數 II

題目描述 輸入兩個整數 a&#xff0c;b&#xff0c;計算并輸出小于 a 的 b個質數&#xff0c;所有符合條件的質數里&#xff0c;輸出最大的 b 個質數&#xff0c;按照從大到小輸出&#xff0c;使用空格隔開。 假如符合條件的數量不夠&#xff0c;則輸出已經滿足的質數。 如果…

詳解Java中的異常體系機構(throw,throws,try catch,finally)

目錄 一.異常的概念 二.異常的體系結構 三.異常的處理 異常處理思路 LBYL&#xff1a;Look Before You Leap EAFP: Its Easier to Ask Forgiveness than Permission 異常拋出throw 異常的捕獲 提醒聲明throws try-catch捕獲處理 finally的作用 四.自定義異常類 一.異…

微信小程序:This Mini Program cannot be opened as your Weixin version is out-of-date.

項目場景&#xff1a; 問題描述 升級基礎庫3.2.0&#xff0c;然后PC端整個小程序都打不開了&#xff0c;點擊小程序提示”This Mini Program cannot be opened as your Weixin version is out-of-date. Update Weixin to the latest version.“&#xff0c;并且點擊Update Wei…

一個悄然崛起的國產軟件!!AI 又進化了!!

大家好&#xff0c;我是 Jack。 AI 寫代碼想必很多人都體驗過了&#xff0c;使用 AI 編程工具是一個大趨勢&#xff0c;越早學會使用 AI 輔助你寫代碼&#xff0c;你的效率也會越高。 甚至有些公司已經要求員工具備 AI 編程能力。 對于學生黨&#xff0c;AI 編程可以幫助我們…

MyBatisPlus總結

MyBatis-Plus時Mybatis的Best Partner MyBatis-Plus (opens new window)&#xff08;簡稱 MP&#xff09;是一個 MyBatis (opens new window)的增強工具&#xff0c;在 MyBatis 的基礎上只做增強不做改變&#xff0c;為簡化開發、提高效率而生。 特性 無侵入損耗小強大的 CR…

Android開發從0開始(廣播)

應用廣播 發送標準廣播的三步驟 發送標準廣播&#xff1a; //發送標準廣播 Intent intent new Intent("com.dongnaoedu.chapter09.standard"); sendBroadcast(intent); 定義廣播接受者: public class StanderdReceiver extends BroadcastReceiver { public s…

在ASP.NET Core 中使用 .NET Aspire 消息傳遞組件

前言 云原生應用程序通常需要可擴展的消息傳遞解決方案&#xff0c;以提供消息隊列、主題和訂閱等功能。.NET Aspire 組件簡化了連接到各種消息傳遞提供程序&#xff08;例如 Azure 服務總線&#xff09;的過程。在本教程中&#xff0c;小編將為大家介紹如何創建一個 ASP.NET …

PLC通過RS232轉PROFINET與電子分析天平秤通訊案例

本案例是通過用興達易控的XD-PNR200型RS232轉Profinet網關連接電子分析天平秤與PLC通訊的配置案例&#xff0c;用到設備為西門子S7-1200PLC&#xff0c;RS232轉Profinet網關&#xff0c;電子分析天平秤。 打開博圖&#xff0c;添加PLC&#xff1b;本案例使用的是1200PLC。 添加…

『接口測試干貨』| Newman+Postman接口自動化測試完整過程

『接口測試干貨』| NewmanPostman接口自動化測試完整過程 1 Newman簡介2 如何安裝Newman&#xff1f;2.1 安裝NodeJs2.2 安裝Newman2.2 解決Newman不是內部命令 3 Newman使用3.1 Newman如何運行集合&#xff1f;3.2 如何查看幫助文檔&#xff1f;3.3 環境變量設置3.4 關于全局變…

微信小程序制作

如果你也想搭建一個小程序&#xff0c;但不知道如何入手&#xff0c;那么今天我就教你如何使用第三方制作平臺&#xff0c;在短短三十分鐘內搭建一個小程序。 一、登錄小程序制作平臺 首先&#xff0c;登錄到小程序制作平臺的官方網站或應用程序&#xff0c;進入后臺管理系統。…

【Oracle OCP考試】1z0-082(4)

1.Which two statements are true about the PMON background process? A. It rolls back transactions when a process fails&#xff08;當進程失敗時&#xff0c;它回滾事務&#xff09; B. It registers database services with all local and remote listeners known to…

文章解讀與仿真程序復現思路——電網技術 EI\CSCD\北大核心《考慮5G基站儲能可調度容量的有源配電網協同優化調度方法》

這篇文章的標題涉及到以下關鍵概念&#xff1a; 5G基站&#xff1a; 提到了5G基站&#xff0c;這表明文章的焦點可能是與第五代移動通信技術相關的內容。5G技術對于提高通信速度、降低延遲以及支持大規模連接等方面有顯著的改進&#xff0c;因此對于基站的電力需求和供應可能存…

2023年ESG投資研究報告

第一章 ESG投資概況 1.1 定義 ESG投資&#xff0c;亦稱負責任投資&#xff0c;是一種融合環境&#xff08;Environment&#xff09;、社會&#xff08;Social&#xff09;和治理&#xff08;Governance&#xff09;考量的投資方法&#xff0c;旨在通過綜合這些因素來優化投資…

美國汽車零部件巨頭 AutoZone 遭遇網絡攻擊

Security Affairs 網站披露&#xff0c;美國汽車配件零售商巨頭 AutoZone 稱其成為了 Clop MOVEit 文件傳輸網絡攻擊的受害者&#xff0c;導致大量數據泄露。 AutoZone 是美國最大的汽車零配件售后市場經銷商之一&#xff0c;在美國、墨西哥、波多黎各、巴西和美屬維爾京群島經…

算法-技巧-簡單-只出現一次的數字、多數元素

記錄一下算法題的學習10 只出現一次的數字 leetcode題目&#xff1a;給你一個 非空 整數數組 nums &#xff0c;除了某個元素只出現一次以外&#xff0c;其余每個元素均出現兩次。找出那個只出現了一次的元素。你必須設計并實現線性時間復雜度的算法來解決此問題&#xff0c;且…

「Whale 帷幄」連續入選科技榜單,AGI 沖擊波正在加速行業洗牌

以 AGI 為底座&#xff0c;品牌 MarTech 正在經歷一場前所未有的深度變革。 近日&#xff0c;彎弓研究院發布「中國 MarTech 500 強榜單」&#xff0c;以 2023 中國營銷技術&#xff08;MarTech&#xff09;生態為研究對象&#xff0c;洞察行業現象與未來趨勢。作為品牌數字化…