2021 年 3 月青少年軟編等考 C 語言一級真題解析

目錄

  • T1. 字符菱形
    • 思路分析
  • T2. 與圓相關的計算
    • 思路分析
  • T3. 蘋果和蟲子 2
    • 思路分析
  • T4. 奇數求和
    • 思路分析
  • T5. 藥房管理
    • 思路分析

T1. 字符菱形

給定一個字符,用它構造一個對角線長 5 5 5 個字符,傾斜放置的菱形。

時間限制:1 s
內存限制:64 MB

  • 輸入
    輸入只有一行,包含一個字符。

  • 輸出
    該字符構成的菱形。

  • 樣例輸入

    *
    
  • 樣例輸出

      ****
    *********
    

思路分析

此題考查字符的輸入輸出,屬于入門題。按照樣例輸出的格式編寫代碼輸出即可。

/** Name: T1.cpp* Problem: 字符菱形* Author: Teacher Gao.* Date&Time: 2024/03/03 11:57*/#include <iostream>using namespace std;int main()
{char ch;cin >> ch;cout << "  " << ch << endl;cout << " " << ch << ch << ch << endl;cout << ch << ch << ch << ch << ch << endl;cout << " " << ch << ch << ch << endl;cout << "  " << ch << endl;return 0;
}

T2. 與圓相關的計算

給出圓的半徑,求圓的直徑、周長和面積。

時間限制:1 s
內存限制:64 MB

  • 輸入
    輸入包含一個實數 r r r 0 < r ≤ 10000 0 < r \le 10000 0<r10000),表示圓的半徑。

  • 輸出
    輸出一行,包含三個數,分別表示圓的直徑、周長、面積,數與數之間以一個空格分開,每個數保留小數點后 4 4 4 位。

  • 樣例輸入

    3.0
    
  • 樣例輸出

    6.0000 18.8495 28.2743
    
  • 提示
    如果圓的半徑是 r r r,那么圓的直徑、周長、面積分別是 2 × r 2 \times r 2×r 2 × π × r 2 \times \pi \times r 2×π×r π × r × r \pi \times r \times r π×r×r,其中約定 π = 3.14159 \pi = 3.14159 π=3.14159。可以使用 printf("%.4lf", ...) 實現保留小數點后 4 4 4 位。

思路分析

先說明一下保留 4 4 4 位小數這個問題,使用 printf("%.4f", ...) 就可以了,對單精度(float)和雙精度(double)都適用。原題中提示使用的 %.4lf 中的 l 并不起作用,C99 標準允許使用 %.4lf,但是在 C89 的標準中是不合法的。關于浮點數的讀 / 寫,博主在格式化輸入 / 輸出和基本類型這兩篇文章中有詳細說明。

此題考查算術運算,以及浮點數精度控制,屬于入門題。按照提示中的公式編寫代碼計算并輸出即可。

/** Name: T2.cpp* Problem: 與圓相關的計算* Author: Teacher Gao.* Date&Time: 2024/03/03 12:23*/#include <cstdio>using namespace std;const double PI = 3.14159;int main()
{double r;scanf("%lf", &r);double d = 2 * r;double c = 2 * PI * r;double s = PI * r * r;printf("%.4f %.4f %.4f\n", d, c, s);return 0;
}

T3. 蘋果和蟲子 2

你買了一箱 n n n 個蘋果,很不幸的是買完時箱子里混進了一條蟲子。蟲子每 x x x 小時能吃掉一個蘋果,假設蟲子在吃完一個蘋果之前不會吃另一個,那么經過 y y y 小時你還有多少個完整的蘋果?

時間限制:1 s
內存限制:64 MB

  • 輸入
    輸入僅一行,包括 n n n x x x y y y(均為整數)。

  • 輸出
    輸出也僅一行,剩下的蘋果個數。

  • 樣例輸入

    10 4 9
    
  • 樣例輸出

    7
    
  • 提示
    注意:是要求完整的蘋果數。

思路分析

此題重點考察分支結構判斷倍數關系,但是題目出得并不好,存在考生難以注意到的細節信息,難度略高。

此題需判斷 y y y 是否為 x x x 的倍數,由此求出蟲子經過 y y y 小時吃的蘋果數量。若 y y y x x x 的倍數,則會吃掉 y / x y / x y/x 個蘋果,最后還剩 n ? y / x n - y / x n?y/x 個完整的蘋果。若 y y y 不是 x x x 的倍數,則會吃掉 y / x y / x y/x 個蘋果,并且正在吃下一個蘋果,也就是說剩余的完整蘋果數為 n ? y / x ? 1 n - y / x - 1 n?y/x?1。顯然這里需要用到分支結構,以達到向上取整的目的。不過這一目標可以被 ceil 函數(ceil(1.0 * y / x))或者數學公式(見示例代碼)替代。

考生難以注意的細節是除數不能為 0 0 0,因為題目中說 x x x 是整數,并沒有說是正整數,因此 x x x 有可能為 0 0 0。盡管在蟲子吃蘋果的背景故事中看起來 x = 0 x = 0 x=0 比較荒唐,但是從題目限制條件來看這種情況是必須考慮在內的。另一個細節是有可能在不到 y y y 小時的時間內,蟲子就已經吃完了所有蘋果,此時需要輸出 0 0 0

/** Name: T3.cpp* Problem: 蘋果和蟲子 2* Author: Teacher Gao.* Date&Time: 2024/03/03 13:49*/#include <iostream>using namespace std;int main()
{int n, x, y;cin >> n >> x >> y;if (x == 0) {cout << 0 << endl;}else {int a = n - (y + x - 1) / x;if (a < 0) a = 0;cout << a << endl;}return 0;
}

T4. 奇數求和

計算非負整數 m m m n n n(包括 m m m n n n)之間的所有奇數的和,其中, m m m 不大于 n n n,且 n n n 不大于 300 300 300。例如 m = 3 m = 3 m=3 n = 12 n = 12 n=12,其和則為: 3 + 5 + 7 + 9 + 11 = 35 3 + 5 + 7 + 9 + 11 = 35 3+5+7+9+11=35

時間限制:1 s
內存限制:64 MB

  • 輸入
    兩個數 m m m n n n,兩個數以一個空格分開,其中 0 ≤ m ≤ n ≤ 300 0 \le m \le n \le 300 0mn300

  • 輸出
    輸出一行,包含一個整數,表示 m m m n n n(包括 m m m n n n)之間的所有奇數的和。

  • 樣例輸入

    7 15
    
  • 樣例輸出

    55
    

思路分析

此題考查循環結構,以及分支結構判斷倍數關系,屬于入門題。

此題只需要用循環遍歷 m m m n n n 之間的所有整數,依次判斷每個數是否為奇數,若為奇數則進行累加即可。

/** Name: T4.cpp* Problem: 奇數求和* Author: Teacher Gao.* Date&Time: 2024/03/03 13:56*/#include <iostream>using namespace std;int main()
{int m, n, sum = 0;cin >> m >> n;for (int i = m; i <= n; i++) {if (i % 2 == 1) {sum += i;}}cout << sum << endl;return 0;
}

T5. 藥房管理

隨著信息技術的蓬勃發展,醫療信息化已經成為醫院建設中必不可少的一部分。計算機可以很好地輔助醫院管理醫生信息、病人信息、藥品信息等海量數據,使工作人員能夠從這些機械的工作中解放出來,將更多精力投入真正的醫療過程中,從而極大地提高了醫院整體的工作效率。

對藥品的管理是其中的一項重要內容。現在藥房的管理員希望使用計算機來幫助他管理。假設對于任意一種藥品,每天開始工作時的庫存總量已知,并且一天之內不會通過進貨的方式增加。每天會有很多病人前來取藥,每個病人希望取走不同數量的藥品。如果病人需要的數量超過了當時的庫存量,藥房會拒絕該病人的請求。管理員希望知道每天會有多少病人沒有取上藥。

時間限制:1 s
內存限制:64 MB

  • 輸入
    3 3 3 行,第一行是每天開始時的藥品總量 m m m
    第二行是這一天取藥的人數 n n n 0 < n ≤ 100 0 < n \le 100 0<n100)。
    第三行共有 n n n 個數,分別記錄了每個病人希望取走的藥品數量(按照時間先后的順序),兩數之間以空格分隔。

  • 輸出
    只有 1 1 1 行,為這一天沒有取上藥品的人數。

  • 樣例輸入

    30
    6
    10 5 20 6 7 8
    
  • 樣例輸出

    2
    

思路分析

此題考查循環結構,以及分支結構判斷大小關系,藥房管理的故事背景讓此題難度略有提升,屬于一般應用題。

此題需要設置一個計數器變量 t o t tot tot 來統計沒有取上藥的病人數。依次輸入每個病人取藥的數量 x x x,然后檢測藥房中的庫存量 m m m 是否足夠,即 m m m 是否大于等于 x x x。若 m < x m < x m<x,說明藥房的庫存不夠,則拒絕該病人的請求,計數器 t o t tot tot 1 1 1。否則,取出數量為 x x x 的藥給該病人,即庫存 m m m 減少 x x x

/** Name: T5.cpp* Problem: 藥房管理* Author: Teacher Gao.* Date&Time: 2024/03/03 14:00*/#include <iostream>using namespace std;int main()
{int m, n, x, tot = 0;cin >> m >> n;for (int i = 1; i <= n; i++) {cin >> x;if (x > m) {tot++;}else {m -= x;}}cout << tot << endl;return 0;
}

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

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

相關文章

3、云原生安全之falco的部署

文章目錄 1、helm安裝2、拉去鏡像失敗與解決3、安裝faclo4、安裝nfs服務器,配置k8s的持久卷4.1、創建nfs服務器,4.2、部署master節點(nsf服務的客戶端)4.3、pv與pvc4.4、假設pv和pvc的配置文件出錯了5、安裝falcosidekick可視化(建議跳過,直接使用6)6、安裝faclo與falco…

【設計模式 01】單例模式

單例模式&#xff0c;是一種創建型設計模式&#xff0c;他的核心思想是保證一個類只有一個實例&#xff08;即&#xff0c;在整個應用程序中&#xff0c;只存在該類的一個實例對象&#xff0c;而不是創建多個相同類型的對象&#xff09;&#xff0c;并提供一個全局訪問點來訪問…

java012 - Java集合基礎

1、集合基礎 1.1 集合概述 引用數據類型包括&#xff1a;類、接口、數組[] 1.2 ArrayList構造和添加方法 代碼&#xff1a; 空集合對象&#xff1a;[] add() add(int index,E element): 1.3 ArrayList集合常用方法

計算機體系結構安全:對體系結構如何支持安全機制進行調研

一、體系結構支持信任建立和主動防御的技術&#xff1a; 可信3.0 二、體系結構怎么更好的支持信任建立和主動防御 2.1 支持信任建立 一、以手機芯片舉例&#xff0c;用智能手機的芯片作為信任根&#xff0c;確保應用程序和敏感數據受到保護。 二、啟動時驗證操作系統和應用…

Stable Diffusion 模型分享:Henmix_Real(人像、真實、寫真、亞洲面孔)

本文收錄于《AI繪畫從入門到精通》專欄,專欄總目錄:點這里。 文章目錄 模型介紹生成案例案例一案例二案例三案例四案例五案例六案例七案例八下載地址模型介紹 作者述:這個模型試圖改

深入理解算法的空間復雜度

算法一&#xff1a;逐步遞增型 void Loveyou(int n)//n為問題規模 {int i1;while(i<n){i;printf("I love you %d\n",i);}printf("I love you more than %d\n",n);//5 } int main() {Loveyou(3000);return 0; } 無論問題規模怎么變&#xff0c;算法運行…

Springboot教程(五)——單元測試

idea中一般使用JUnit進行單元測試 基本使用 我們可以在idea的test文件夾下的XXXXApplicationTests內進行單元測試&#xff1a; 可以在Test標注的方法上寫測試代碼&#xff1a; SpringBootTest class C0101ApplicationTests {Testfun contextLoads() {println("Hello …

基礎二分學習筆記

模板 : 個人傾向第一種 ; 整數二分 : 最大化查找 : 可行區域在左側 : 查找最后一個<q的數的下標 : int find(int q){// 查找最后一個 < q 的下標 int l 0 , r n 1 ;while(l 1 < r){int mid l r >> 1 ;if(a[mid]<q) l mid ;else r mid ;}return…

django settings.py STATICFILES_FINDERS 設置

STATICFILES_FINDERS 定義查找器后端以確保Django能夠正確地定位和提供靜態文件是很重要的. Django中的STATICFILES FINDERS設置是一個inder后端列表&#xff0c;它知道如何在不同的位置定位靜態文件。 它被Django的靜態文件處理系統用來在開發和部署過程中查找和收集靜態文件…

js json轉換成字符串

js中JSON數據轉換成字符串&#xff0c;可以使用JSON.stringify()方法。 var obj {name: "張三", age: 18, gender: "男"}; var jsonString JSON.stringify(obj); console.log(jsonString); // 輸出 {"name":"張三","age"…

土壤類型數據

國家地球系統科學數據中心

AGM CPLD (AGRV2K )的時鐘(外部時鐘和片上內部振蕩器)

AGM CPLD &#xff08;AGRV2K &#xff09;的時鐘(外部時鐘和片上內部振蕩器) 外部晶振 與 內部振蕩器&#xff1a; mcu 和 cpld 聯合編程時&#xff0c; 整顆芯片需要一顆外部晶振。 &#xff08;芯片有內部振蕩器&#xff0c; 但誤差較大&#xff0c; 校準后 5%以內誤差&…

216. 組合總和 III(力扣LeetCode)

文章目錄 216. 組合總和 III回溯算法 216. 組合總和 III 找出所有相加之和為 n 的 k 個數的組合&#xff0c;且滿足下列條件&#xff1a; 只使用數字1到9每個數字 最多使用一次 返回 所有可能的有效組合的列表 。該列表不能包含相同的組合兩次&#xff0c;組合可以以任何順序…

Electron通過預加載腳本從渲染器訪問Node.js

問題&#xff1a;如何實現輸出Electron的版本號和它的依賴項到你的web頁面上&#xff1f; 答案&#xff1a;在主進程通過Node的全局 process 對象訪問這個信息是微不足道的。 然而&#xff0c;你不能直接在主進程中編輯DOM&#xff0c;因為它無法訪問渲染器 文檔 上下文。 它們…

【軟考】數據庫的三級模式

目錄 一、概念1.1 說明1.2 數據庫系統體系結構圖 二、外模式三、概念模式四、內模式 一、概念 1.1 說明 1.數據的存儲結構各不相同&#xff0c;但體系結構基本上具有相同的特征&#xff0c;采用三級模式和兩級鏡像 2.數據庫系統設計員可以在視圖層、邏輯層和物理層對數據進行抽…

matplotlib散點圖

matplotlib散點圖 假設通過爬蟲你獲取到了北京2016年3, 10月份每天白天的最高氣溫(分別位于列表a, b), 那么此時如何尋找出氣溫和隨時間(天)變化的某種規律? from matplotlib import pyplot as pltx_3 range(1, 32) x_10 range(51, 82)y_3 [11,17,16,11,12,11,12,6,6,7,8…

試手一下CameraX(APP)

書接上回。 首先還是看谷歌的官方文檔&#xff1a; https://developer.android.com/media/camera/camerax?hlzh-cn https://developer.android.com/codelabs/camerax-getting-started?hlzh-cn#1 注&#xff1a;這里大部分內容也來自谷歌文檔。 官方文檔用的是Kotlin&…

常用的字符字符串的讀取方法(C / C++)

一、字符 1、讀取單個字符&#xff1a;直接讀取 //輸入a //讀取 char x; scanf("%c",&x); 2、讀取帶空格的字符 h h h 按格式書寫格式化字符串即可 char a,b,c; scanf("%c %c %c",&a,&b,&c); 3、 處理字符間的換行符 假設要讀取以…

Day14:信息打點-主機架構蜜罐識別WAF識別端口掃描協議識別服務安全

目錄 Web服務器&應用服務器差異性 WAF防火墻&安全防護&識別技術 蜜罐平臺&安全防護&識別技術 思維導圖 章節知識點 Web&#xff1a;語言/CMS/中間件/數據庫/系統/WAF等 系統&#xff1a;操作系統/端口服務/網絡環境/防火墻等 應用&#xff1a;APP對象/…

小程序圖形:echarts-weixin 入門使用

去官網下載整個項目&#xff1a; https://github.com/ecomfe/echarts-for-weixin 拷貝ec-canvs文件夾到小程序里面 index.js里面的寫法 import * as echarts from "../../components/ec-canvas/echarts" const app getApp(); function initChart(canvas, width, h…