【PTA|函數題|期末復習】指針

目錄

6-1 計算兩數的和與差(5分)

函數接口定義:

裁判測試程序樣例:

輸入樣例:

輸出樣例:

代碼

6-2 拆分實數的整數與小數部分 (5分)

函數接口定義:

裁判測試程序樣例:

輸入樣例:

輸出樣例:

代碼

6-3 利用指針找最大值 (5分)

函數接口定義:

裁判測試程序樣例:

輸入樣例:

輸出樣例:

代碼

6-4 在數組中查找指定元素 (15分)

函數接口定義:

裁判測試程序樣例:

輸入樣例1:

輸出樣例1:

輸入樣例2:

輸出樣例2:

代碼

6-5 使用函數找出數組中的最大值 (16分)

函數接口定義:

裁判測試程序樣例:

輸入樣例:

輸出樣例:

代碼


6-1 計算兩數的和與差(5分)

本題要求實現一個計算輸入的兩數的和與差的簡單函數。

函數接口定義:

void sum_diff( float op1, float op2, float *psum, float *pdiff );

其中op1op2是輸入的兩個實數,*psum*pdiff是計算得出的和與差。

裁判測試程序樣例:

#include <stdio.h>void sum_diff( float op1, float op2, float *psum, float *pdiff );int main()
{float a, b, sum, diff;scanf("%f %f", &a, &b);sum_diff(a, b, &sum, &diff);printf("The sum is %.2f\nThe diff is %.2f\n", sum, diff);return 0; 
}/* 你的代碼將被嵌在這里 */

輸入樣例:

4 6

輸出樣例:

The sum is 10.00
The diff is -2.00

代碼

void sum_diff(float op1, float op2, float* psum, float* pdiff)
{*psum = op1 + op2;    //通過傳入指針,即使函數返回類型是void,//也可以修改并傳回兩個值*pdiff = op1 - op2;
}

6-2 拆分實數的整數與小數部分 (5分)

本題要求實現一個拆分實數的整數與小數部分的簡單函數。

函數接口定義:

void splitfloat( float x, int *intpart, float *fracpart );

其中x是被拆分的實數(0≤x<10000),*intpart*fracpart分別是將實數x拆分出來的整數部分與小數部分。

裁判測試程序樣例:

#include <stdio.h>void splitfloat( float x, int *intpart, float *fracpart );int main()
{float x, fracpart;int intpart;scanf("%f", &x);splitfloat(x, &intpart, &fracpart);printf("The integer part is %d\n", intpart);printf("The fractional part is %g\n", fracpart);return 0;
}/* 你的代碼將被嵌在這里 */

輸入樣例:

2.718

輸出樣例:

The integer part is 2
The fractional part is 0.718

代碼

 
void splitfloat( float x, int *intpart, float *fracpart ){
//通過傳入指針,即使函數返回類型是void,也可以修改并傳回兩個值*intpart=(int)x; //整數部分,使用強制類型轉換*fracpart=x-*intpart; //小數部分,用x減去整數部分}

6-3 利用指針找最大值 (5分)

本題要求實現一個簡單函數,找出兩個數中的最大值。

函數接口定義:

void findmax( int *px, int *py, int *pmax );

其中pxpy是用戶傳入的兩個整數的指針。函數findmax應找出兩個指針所指向的整數中的最大值,存放在pmax指向的位置。

裁判測試程序樣例:

#include <stdio.h>void findmax( int *px, int *py, int *pmax );int main()
{    int max, x, y; scanf("%d %d", &x, &y);findmax( &x, &y, &max );printf("%d\n", max);return 0;
} /* 你的代碼將被嵌在這里 */

輸入樣例:

3 5

輸出樣例:

5

代碼

 
void findmax( int *px, int *py, int *pmax )
{//通過傳入指針,即使函數返回類型是void,也可以修改并傳回兩個值if(*px>*py)*pmax=*px;else*pmax=*py;
}

6-4 在數組中查找指定元素 (15分)

本題要求實現一個在數組中查找指定元素的簡單函數。

函數接口定義:

int search( int list[], int n, int x );

其中list[]是用戶傳入的數組;n(≥0)是list[]中元素的個數;x是待查找的元素。如果找到

則函數search返回相應元素的最小下標(下標從0開始),否則返回?1。

裁判測試程序樣例:

#include <stdio.h>
#define MAXN 10int search( int list[], int n, int x );int main()
{int i, index, n, x;int a[MAXN];scanf("%d", &n);for( i = 0; i < n; i++ )scanf("%d", &a[i]);scanf("%d", &x);index = search( a, n, x );if( index != -1 )printf("index = %d\n", index);elseprintf("Not found\n");return 0;
}/* 你的代碼將被嵌在這里 */

輸入樣例1:

5
1 2 2 5 4
2

輸出樣例1:

index = 1

輸入樣例2:

5
1 2 2 5 4
0

輸出樣例2:

Not found

代碼

 
int search( int list[], int n, int x ){int i,t=-1;for(i=0;i<n;i++){if(list[i]==x){ t=i;break;         //找到跳出for循環}}return t;}

6-5 使用函數找出數組中的最大值 (16分)

本題要求實現一個找出整型數組中最大值的函數。

函數接口定義:

int FindArrayMax( int a[], int n );

其中a是用戶傳入的數組,n是數組a中元素的個數。函數返回數組a中的最大值。

裁判測試程序樣例:

#include <stdio.h>
#define MAXN 10int FindArrayMax( int a[], int n );int main()
{int i, n;int a[MAXN];scanf("%d", &n);for( i=0; i<n; i++ ){scanf("%d", &a[i]);}printf("%d\n", FindArrayMax(a, n));return 0;
}/* 請在這里填寫答案 */

輸入樣例:

4
20 78 99 -14

輸出樣例:

99

代碼

int FindArrayMax(int a[],int n)
{int max=a[0]; //假設最大值是第一個for(int i=0;i<n;i++) //循環找到最大值{if(a[i]>=max)   //如果大于最大值則替換{max=a[i];}}return max;
}

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

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

相關文章

springboot整合mybatisPlus超級詳細

springboot整合mybatis-plus超級詳細 一、環境二、springboot整合myBatisPlus2.1新建2.2 添加Mybatis-plus和mysql依賴2.3 修改配置文件2.4 新建包和文件2.5 新建表2.6 創建實體類2.7 創建Mapper接口2.8 創建Service接口2.9 創建Service實現類2.10 增刪改查 MyBatis-Plus&#…

C# Onnx 使用onnxruntime部署實時視頻幀插值

目錄 介紹 效果 模型信息 項目 代碼 下載 C# Onnx 使用onnxruntime部署實時視頻幀插值 介紹 github地址&#xff1a;https://github.com/google-research/frame-interpolation FILM: Frame Interpolation for Large Motion, In ECCV 2022. The official Tensorflow 2…

四.QT5工具安裝和環境變量的配置

1.以管理員身份運行安裝包 2.登錄qt賬號&#xff0c;點擊【next】 3.選中同意 4.選擇安裝目錄&#xff0c;注意不能有中文和空格 5.勾選 64位 mingw。點擊【next】&#xff0c;等待安裝完成 6.配置環境變量

[07] 組件注冊

目錄 Vue.js 組件局部注冊全局注冊 Vue.js 組件 組件&#xff08;Component&#xff09;是 Vue.js 最強大的功能之一。 組件可以擴展 HTML 元素&#xff0c;封裝可重用的代碼。 組件系統讓我們可以用獨立可復用的小組件來構建大型應用&#xff0c;幾乎任意類型的應用的界面都…

為什么很多人選用QT開發,有哪些應用實例?

在軟件開發領域&#xff0c;Qt框架作為一種跨平臺的C應用程序開發框架&#xff0c;近年來受到越來越多開發者的青睞。這主要得益于其卓越的跨平臺性能、豐富的功能庫、開發效率以及社區支持。以下將通過詳實的分析&#xff0c;從不同角度探討為什么很多人改用QT開發&#xff0c…

低代碼開發:學校低成本數字化轉型的新引擎

隨著科技的飛速發展&#xff0c;數字化轉型已經成為教育行業的一大趨勢。然而&#xff0c;對于許多學校來說&#xff0c;高昂的數字化改造成本成為了一道難以逾越的門檻。本文將探討如何通過低代碼開發&#xff0c;以低成本實現學校數字化轉型&#xff0c;為教育行業注入新活力…

力扣熱題100_子串_560_和為 K 的子數組

文章目錄 題目鏈接解題思路解題代碼 題目鏈接 560.和為 K 的子數組 解題思路 1.定義變量count&#xff08;計算個數&#xff0c;返回值&#xff09;為0、n&#xff08;當前nums長度&#xff09;、preSums&#xff08;利用利用defaultdict的特性&#xff0c;當presum-k不存在…

list.stream().forEach()和list.forEach()的區別

list.stream().forEach() 和 list.forEach() 在 Java 中都是用于遍歷集合元素的方法&#xff0c;但它們在使用場景和功能上有所不同&#xff1a; list.forEach()&#xff1a; 是從 Java 8 開始引入到 java.util.List 接口的標準方法。直接對列表進行迭代&#xff0c;它采用內部…

力扣645. 錯誤的集合(排序,哈希表)

Problem: 645. 錯誤的集合 文章目錄 題目描述思路復雜度Code 題目描述 思路 1.排序 1.對nums數組按從小到大的順序排序; 2.遍歷數組時若判斷兩個相鄰的元素則找到重復元素&#xff1b; 3.記錄一個整形變量prev一次置換當前位置元素并與其作差&#xff0c;若差等于2著說明缺失的…

Mysql索引操作

1、索引語法 2、慢查詢日志 慢查詢日志記錄了所有執行時間超過指定參數&#xff08; long_query_time &#xff0c;單位&#xff1a;秒&#xff0c;默認 10 秒&#xff09;的所有 SQL 語句的日志。 MySQL 的慢查詢日志默認沒有開啟&#xff0c;我們可以查看一下系統變量 slo…

MySQL數據庫備份與還原批處理腳本

數據庫備份文件&#xff0c;例如保存為&#xff1a;dump_msyql.bat REM 數據庫備份 echo offREM 激活延遲環境變量擴展&#xff0c;防止變量賦值丟失 setlocal enabledelayedexpansionREM 獲取當天時間 set today%date:~8,2%REM 大前天&#xff0c;當天-3天&#xff0c;小于10…

包裝類日期日歷類

一(Date類)&#xff1a; 在JDK的java.util包中&#xff0c;提供了Date類用于表示日期和時間&#xff0c;精確到毫秒。隨著JDK版本的不斷升級和發展&#xff0c;Date類中的大部分構造方法和普通方法都已經不推薦使用。在JDK8中&#xff0c;Date類只有2個構造方法可以使用&#x…

【LeetCode】升級打怪之路 Day 02:有序數組平方 滑動窗口法

今日題目&#xff1a; 977. 有序數組的平方 | LeetCode209. 長度最小的子數組 | LeetCode76. 最小覆蓋子串 | LeetCode59. 螺旋矩陣 II | LeetCode 目錄 今日總結Problem 1&#xff1a;有序數組平方 ???Problem 2&#xff1a;滑動窗口法 【必會】LeetCode 209. 長度最小的子…

怎樣提取WPS文檔的目錄?

怎樣提取WPS文檔的目錄&#xff08;智能識別目錄&#xff09;&#xff1f; 1. 將你的WPS文檔打開&#xff0c;菜單&#xff1a;文件&#xff1a;輸出為PDF&#xff0c;另存為(.pdf) 2. PyPDF2 從PDF文件中提取目錄 運行 python pdf_read_dir.py 你的PDF文件 或者 java : pd…

【2024軟件測試面試必會技能】Appium自動化(5):元素定位工具

常用元素定位工具使用 uiautomatorviewer定位工具&#xff1a; 元素定位主要用來獲取元素信息&#xff0c;獲取元素信息后才能用appium提供的相關API去識別和操作元素。 谷歌在AndroidSDK中&#xff0c;提供了元素定位工具uiautomatorviewer&#xff0c;該工具可在android-s…

系統學習Python——裝飾器:類裝飾器-[跟蹤對象接口:基礎知識]

分類目錄&#xff1a;《系統學習Python》總目錄 文章《系統學習Python——裝飾器&#xff1a;類裝飾器-[單例類&#xff1a;基礎知識]》的單例示例闡明了如何使用類裝飾器來管理一個類的所有實例。類裝飾器的另一個常用場景是為每個生成的實例擴展接口。類裝飾器基本上可以在實…

三opencv源碼解壓及環境變量配置

1.雙擊opencv-3.4.6-vc14-vc15.exe 2.選擇解壓的路徑&#xff0c;點擊【extract】 3.設計環境變量

從零學習Linux操作系統第二十七部分 shell腳本中的變量

一、什么是變量 變量的定義 定義本身 變量就是內存一片區域的地址 變量存在的意義 命令無法操作一直變化的目標 用一串固定的字符來表示不固定的目標可以解決此問題 二、變量的類型及命名規范 環境級別 export A1 在環境關閉后變量失效 退出后 關閉 用戶級別&#xff…

《初階數據結構》尾聲

目錄 前言&#xff1a; 《快速排序&#xff08;非遞歸&#xff09;》: 《歸并排序》&#xff1a; 《歸并排序&#xff08;非遞歸&#xff09;》&#xff1a; 《計數排序》&#xff1a; 對于快速排序的優化&#xff1a; 分析&#xff1a; 總結&#xff1a; 前言&#xff1a…

新疆營盤古城及古墓群安防艙體實施方案

3 總體布局 3.1設計原則 3.1.1執行有效的國家標準、國家軍用標準和行業標準&#xff1b; 3.1.2滿足指標要求&#xff1b; 3.1.3采用通用化、模塊化設計&#xff0c;提高設備可維修性&#xff1b; 3.1.4采用人機工程學知識進行設計&#xff0c;充分考慮安全性。 3.2 總體…