C語言 編程題

C語言學習!

????????1.小明上課需要走n階臺階,他每次可以選擇走一階或者走兩階,他一共有多少種走法?

輸入描述:輸入包含一個整數n(1 ≤ n?≤30)

輸出描述:輸出一個整數,即小明可以走的方法數。

代碼示例:

#include <stdio.h>int fig(int n)
{if (n <= 2){return n;}else{return fig(n - 1) + fig(n - 2);}
}int main()
{int n = 0;scanf("%d", &n);//輸入int ret = fig(n);//計算printf("%d\n", ret);//輸出return 0;
}

運行結果:

2
2
10
89

????????2.有一個整數序列(可能有重復的整數),現刪除指定的某一個整數,輸出刪除指定數字之后的序列,序列中未被刪除數字的前后位置沒有發生改變。

數據范圍:序列長度和序列中的值都滿足 1 ≤ n?≤ 50

輸入描述:

  • 第一行輸入一個整數(1 ≤ n?≤ 50)。
  • 第二行輸入N個整數,輸入用空格分隔的N個整數。
  • 第三行輸入想要進行刪除的一個整數。

輸出描述:輸出為一行,刪除指定數字之后的序列。

代碼示例:

#include <stdio.h>
int main()
{int n = 0;scanf("%d", &n);//接收n個數字int arr[50] = { 0 };int i = 0;for (i = 0; i < n; i++){scanf("%d", &arr[i]);}int del = 0;scanf("%d", &del);//接收刪除的數據int j = 0;//j作為下標鎖定的位置,用來存放不刪除的數據for (i = 0; i < n; i++){if (arr[i] != del){arr[j++] = arr[i];}}for (i = 0; i < j; i++)//輸出{printf("%d ", arr[i]);}return 0;
}

運行結果:

6
5 7 6 9 5 8
5
7 6 9 8

????????3.輸出n個成績,換行輸出n個成績中最高分和最低分的差。

輸入描述:

  • 兩行。第一行為n,表示n個成績,不會大于10000.
  • 第二行為n個成績(整數表示,范圍0~100),以空格隔開。

輸出描述:一行,輸出n個成績中最高分數和最低分數的差。

代碼示例:

#include <stdio.h>
int main()
{int n = 0;scanf("%d", &n);int arr[10000] = { 0 };int i = 0;for (i = 0; i < n; i++)//輸入{scanf("%d", &arr[i]);}int max = 0;int mix = 100;for (i = 0; i < n; i++)//比較出最大值和最小值{if (arr[i] < mix){mix = arr[i];}if (arr[i] > max){max = arr[i];}}printf("%d", max - mix);//輸出return 0;
}

運行結果:

6
66 88 60 87 99 80
39

? ? ? ? 4.字母大小寫轉換,有一個字符,判斷它是否為大寫字母,如果是,將它轉換成小寫字母;反之則轉換為大寫字母。

輸入描述:多組輸入,每一行輸入一個字母。

輸出描述:針對每組輸入,輸出單獨占一行,輸出字母的對應形式。

代碼示例1:

#include <stdio.h>
int main()
{char n = 0;while(scanf("%c", &n)==1){if (n >= 'a' && n <= 'z'){printf("%c\n", n - 32);}else if (n >= 'A' && n <= 'Z'){printf("%c\n", n + 32);}}return 0;
}

運行結果:

a
A
G
g
f
F
H
h

代碼示例2:

#include <ctype.h>
#include <stdio.h>
int main()
{char n = 0;while(scanf("%c", &n)!=EOF){if (islower(n))//islower函數判斷是否是小寫字母,是返回1{printf("%c\n", toupper(n));//toupper函數可將小寫字母轉大寫}else if (isupper(n))//isupper函數判斷是否是大寫字母,是返回1{printf("%c\n", tolower(n));//tolower函數可將大寫字母轉小寫}}return 0;
}

運行結果:

a
A
b
B
G
g
T
t

分析:scanf函數讀取成功時,返回讀取的數據個數;讀取失敗時,返回EOF。


? ? ? ? 5.判斷輸入的字符是不是字母。

輸入描述:多組輸入,每一行輸入一個字符。

輸出描述:針對每組輸入,輸出但獨占一行,判斷輸入字符是否為字母,輸出內容詳見輸出樣例。

輸出樣例:

a
a is an alphabet.
*
* is not an alphabet.

代碼示例1:

#include <stdio.h>
int main()
{char ch = 0;while (scanf("%c", &ch) == 1){if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')){printf("%c is an alphabet.\n", ch);}else{printf("%c is not an alphabet.\n", ch);}getchar( );//用于處理輸入字符末尾的\n}return 0;
}

運行結果:

5
5 is not an alphabet.
D
D is an alphabet.
a
a is an alphabet.
*
* is not an alphabet.

分析:

????????getchar( );用于處理輸入字符末尾的\n

代碼示例2:

#include <stdio.h>
int main()
{char ch = 0;while (scanf(" %c", &ch) == 1)//%c前面加空格,是為了跳過下一個字符之前的所有空白字符\n{if (isalpha(ch))// isalpha函數用于判斷是否為字母,是輸出1.{printf("%c is an alphabet.\n", ch);}else{printf("%c is not an alphabet.\n", ch);}}return 0;
}

運行結果:

#
# is not an alphabet.
G
G is an alphabet.
c
c is an alphabet.
9
9 is not an alphabet.

分析:

? ? ? ? scanf中%c前面加空格,是為了跳過下一個字符之前的所有空白字符\n

? ? ? ? isalpha函數用于判斷是否為字母,是輸出1.


????????6.變種水仙花數:把任意的數字從中間拆分成兩個數字,如1461可拆分為1和461;14和61;146和1,若所有拆分后的乘積之和等于自身則是一個水仙花數。

1461=1*461?+ 14*61 + 146*1

求出5位數中的所有水仙花數。

代碼示例:

#include <stdio.h>
#include <math.h>int main()
{int i = 0;for (i = 10000; i < 99999; i++){int j = 0;int sum = 0;for (j = 1; j <= 4; j++){int k = (int)pow(10, j);sum += (i / k) * (i % k);}if (sum == i){printf("%d ", i);}}return 0;
}

運行結果:

14610 16420 23610 34420 65500

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

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

相關文章

LeetCode 1457. 二叉樹中的偽回文路徑||位運算 DFS

1457. 二叉樹中的偽回文路徑 給你一棵二叉樹&#xff0c;每個節點的值為 1 到 9 。我們稱二叉樹中的一條路徑是 「偽回文」的&#xff0c;當它滿足&#xff1a;路徑經過的所有節點值的排列中&#xff0c;存在一個回文序列。 請你返回從根到葉子節點的所有路徑中 偽回文 路徑的…

Golang優雅實現按比例切分流量

我們在進行灰度發布時&#xff0c;往往需要轉發一部分流量到新上線的服務上&#xff0c;進行小規模的驗證&#xff0c;隨著功能的不斷完善&#xff0c;我們也會逐漸增加轉發的流量&#xff0c;這就需要按比例去切分流量&#xff0c;那么如何實現流量切分呢&#xff1f; 我們很容…

力扣(LeetCode)-1. 兩數之和

給定一個整數數組 nums 和一個整數目標值 target&#xff0c;請你在該數組中找出 和為目標值 target 的那 兩個 整數&#xff0c;并返回它們的數組下標。 你可以假設每種輸入只會對應一個答案。但是&#xff0c;數組中同一個元素在答案里不能重復出現。 你可以按任意順序返回…

【交流】PHP生成唯一邀請碼

目錄 前言&#xff1a; 1.隨機生成&#xff0c;核對user表是否已存在 代碼&#xff1a; 解析&#xff1a; 缺點&#xff1a; 2.建表建庫&#xff0c;每次從表中隨機抽取一條&#xff0c;用完時擴充 表結構 表視圖 代碼 解析 缺點 結論&#xff1a; 前言&#xff1a; …

LinuxBasicsForHackers筆記 -- 壓縮和歸檔

壓縮分為有損或無損。有損壓縮對于減小文件大小非常有效&#xff0c;但會丟失信息的完整性。換句話說&#xff0c;壓縮后的文件與原始文件并不完全相同。 這種類型的壓縮非常適合圖形、視頻和音頻文件&#xff0c;文件中的微小差異幾乎不會被注意到。 本章重點介紹這種無損壓縮…

解讀Stable Video Diffusion:詳細解讀視頻生成任務中的數據清理技術

Diffusion Models視頻生成-博客匯總 前言:Stable Video Diffusion已經開源一周多了,技術報告《Stable Video Diffusion: Scaling Latent Video Diffusion Models to Large Datasets》對數據清洗的部分描述非常詳細,雖然沒有開源源代碼,但是博主正在嘗試復現其中的操作。這篇…

醫學影像PACS信息化數字平臺源碼

PACS系統對醫院影像科意義重大&#xff0c;將業務量巨大的影像檢驗流程依托于信息化技術&#xff0c;對于進行信息化建設的醫院而言&#xff0c;是十分必要的。 PACS系統源碼&#xff0c;集成三維影像后處理功能&#xff0c;包括三維多平面重建、三維容積重建、三維表面重建、三…

包裝類, 泛型---java

目錄 一. 包裝類 1.1 基本數據類型和對應的包裝類 1.2 裝箱和拆箱 二. 泛型 2.1什么是泛型 2.2泛型的引入 2.3 泛型類語法 2.4 泛型類的使用 2.5 裸類型(Raw Type)(了解) 2.6 泛型是如何編譯的 2.7 泛型的上界 2.8 泛型方法 一. 包裝類 在 Java 中&#xff0c;由于基本…

uniapp實戰 —— 豎排多級分類展示

效果預覽 完整范例代碼 頁面 src\pages\category\category.vue <script setup lang"ts"> import { getCategoryTopAPI } from /apis/category import type { CategoryTopItem } from /types/category import { onLoad } from dcloudio/uni-app import { compu…

vue指令

v-text 更新元素的 textContent。如果要更新部分的 textContent&#xff0c;需要使用 {{ Mustache }} 插值。 <span v-text"msg"></span> <!-- 和下面的一樣 --> <span>{{msg}}</span>v-html 更新元素的 innerHTML。注意&#xff1a;內…

基于高通MSM8953平臺android9.0的GPIO驅動開發

2.1、注冊設備&#xff1a; 2.1.1、添加編譯選項&#xff1a; 1&#xff09;、修改kernel/msm-4.9/drivers/leds下Makefile文件&#xff1a; obj-$(CONFIG_LED_GPIO) led_gpio.o 2&#xff09;、修改kernel/msm-4.9/drivers/leds下Kconfig文件&#xff1a; config LED_GPIO…

Java實現歸并排序算法

歸并排序算法 &#xff08;1&#xff09;基本思想&#xff1a;歸并&#xff08;Merge&#xff09;排序法是將兩個&#xff08;或兩個以上&#xff09;有序表合并成一個新的有序表&#xff0c;即把待排序序列分為若干個子序列&#xff0c;每個子序列是有序的。然后再把有序子序…

蛋白質序列FeatureDict轉化為TensorDict

主要轉化語句為 tensor_dict {k: tf.constant(v) for k, v in np_example.items() if k in features_metadata}。 增加了特征名稱的選擇&#xff0c;不同特征維度&#xff0c;特征數的判斷等。 from typing import Dict, Tuple, Sequence, Union, Mapping, Optional #import …

postgresql_conf中常用配置項

在 PostgreSQL 的 postgresql.conf 配置文件中&#xff0c;有許多常用的配置項&#xff0c;這些配置項可以根據特定需求和性能優化進行調整。以下是一些常用的配置項及其作用&#xff1a; 1. shared_buffers 用于設置 PostgreSQL 實例使用的共享內存緩沖區大小。增加此值可以…

游戲被攻擊該怎么辦?游戲盾該如何使用,游戲盾如何防護攻擊

隨著Internet互聯網絡帶寬的增加和多種DDOS黑客工具的不斷發布&#xff0c;DDOS拒絕服務攻擊的實施越來越容易&#xff0c;DDOS攻擊事件正在成上升趨勢。出于商業競爭、打擊報復和網絡敲詐等多種因素&#xff0c;導致很多商業站點、游戲服務器、聊天網絡等網絡服務商長期以來一…

Nacos 配置加密功能也太雞肋了吧,有種更好的方式

大家好&#xff0c;我是風箏&#xff0c;微信搜「古時的風箏」&#xff0c;更多干貨 當項目中用了 Nacos 做配置中心&#xff0c;是不是所有的配置都放到里面呢&#xff0c;大部分時候為了省事和統一&#xff0c;系統所有的配置都直接放在里面了&#xff0c;有時候&#xff0c…

什么是自動化測試框架?常用的自動化測試框架有哪些?

無論是在自動化測試實踐&#xff0c;還是日常交流中&#xff0c;經常聽到一個詞&#xff1a;框架。之前學習自動化測試的過程中&#xff0c;一直對“框架”這個詞知其然不知其所以然。 最近看了很多自動化相關的資料&#xff0c;加上自己的一些實踐&#xff0c;算是對“框架”…

Redis相關知識

yum安裝redis 使用以下命令&#xff1a;直接將redis安裝到Linux服務器&#xff08;Xshell&#xff09;中 yum -y install redis 啟動redis 使用以下命令&#xff0c;以后臺運行方式啟動redis redis-server /etc/redis.conf & 操作redis 使用以下命令啟動redis客戶端 redis-…

RFID在新能源工廠大放異彩

RFID在新能源工廠大放異彩 我國在十四五規劃中提出了建設綠色低碳發展的目標&#xff0c;新能源產業成為了國家發展的重點領域之一&#xff0c;開始大力支持各種新能源廠商發展。各個廠商之間不僅比產品、比技術。也比生產想要降本增效&#xff0c;為了實現這一目標&#xff0…

MBD Introduction

介紹 MATLAB是MathWorks公司的商業數學軟件&#xff0c;應用于科學計算、可視化以及交互式程序設計等高科技計算環境。Simulink是MATLAB中的一種可視化仿真工具。 Simulink是一個模塊圖環境&#xff0c;用于多域仿真以及基于模型的設計。它支持系統設計、仿真、自動代碼生成以…