搜尋
首頁電腦教學電腦知識用C語言寫程式,計算一個整數各位數字的和

用C語言寫程式,計算一個整數各位數字的和

一道c語言數組程式設計題編寫程式一個整數各位數字之和

這題的關鍵在於分離數字,分離方法可以用這種方法,比如,用119來實現分離,根據題目要結果為1 1 9=11對吧,我們透過這樣來分離,(1)用119 ,就是119除以10的餘數是9對吧?聰明的你現在就應該發現9被分離出來了吧(2)接著分離十位數,119/10的結果只能為整數是11對吧,再用11 ,11除以10的餘數為1對吧?是不是又把1分離出來了(3)最後就是百位數了,11/10的結果為1對吧,百位數也分開了(4)最後我們只需要吧他們相加不就完了。

分離的結束條件是當整除結果小於10時結束。

在分離過程中我們可以使用陣列來儲存分離出來的數。

具體程式碼如下:

/*方法一為遞歸方法解答,本人覺得此方法更簡單,能理解最好*/

#include

int show(int num)

{

if(num

return num;/*遞迴出口*/

else

return num show(num/10);

}

void main()

{

int num,sum;

printf("請輸入一個整數:");

scanf("%d",&num);

sum=show(num);

printf("各位數總和的結果為:%d\n",sum);

}

/*方法二用陣列做的,做法可能過於複雜,不要建議,有好的方法大家分享*/

#include

void main()

{

int 值[10];

int num;

printf("請輸入一個整數:");

scanf("%d",&num);

while(num=10000)

{

printf("此程式碼暫時只支援10000以下的4位數的計算,輸入整數無效!請重新輸入:");

scanf("%d",&num);

}

if(num>=0&num

printf("結果為:%d\n",num);

else if(num>=10&num

{

value[0]=num ;

value[1]=num/10;

printf("結果為:%d\n",value[0] value[1]);

}

else if(num>=100&num

{

value[0]=num ; /*分離個位數*/

#value[1]=num/10; /*得出新的待分離數*/

value[2]=value[1] ; /*分離出十位數*/

value[3]=value[1]/10; /*得到百位數*/

printf("結果為:%d\n",value[0] value[2] value[3]);

}

else

{

value[0]=num ; /*分離個位數*/

#value[1]=num/10; /*得出新的待分離數*/

value[2]=value[1] ; /*分離出十位數*/

value[3]=value[1]/10; /*得出新的待分離數*/

value[4]=value[3] ; /*得出百位數*/

value[5]=value[3]/10; /*得出千位數*/

printf("結果為:%d\n",value[0] value[2] value[4] value[5]);

}

}

一道C語言數組的題 C高手幫忙

#include

main()

{ int a[ ]={1,2,3,4,5,6,7,8,9,0},*p; //定義了一個10個元素的數組,每個元素int型別,也定義了一個p指標.

p=a; //p指標指向陣列a

printf (“%x\n”,p); //輸出把p的位址以十六進位顯示,

printf (“%x\n”,p 9);//p 9表示移動9個int類型的距離的位址之後換成十六進位顯示,

}

如果你的確想列印位址,使用%p 格式就行了,預設是16進位表示,效果和%x一樣,但是省去了部分操作。

若一個int型別的變數佔2個位元組,

第一個printf語句輸出的是194,則第二個printf語句的輸出結果是

這個題的意思是問你第一個元素到最後一個元素總共佔了多少個位元組

0x194 2* 9=

自己算吧,懶得換算了。

194表示十六進位的陣列首位址,一個Int類型佔用2個位元組,那麼移動9個元素的距離就是2*9個位元組,然後顯示位址就是了。

這個深入記憶體裡類型的表示格式,你記住 1表示移動一個元素類型的距離就行了。

幾道簡單C語言程式設計題關於陣列的感謝 !

第一題:

#include "stdio.h"

void main()

{int a[10];

int i,max;

for(i=0;i

scanf("%d,",&a[i]);

max=a[0];

for(i=1;i

{

if(max

max=a[i];

}

printf("最大值為:%d",max);

}

第二題:

#include "stdio.h"

void main()

{

int i,a[10];

long int sum; /*sum 是總分*/

float average; /*平均值*/

for(i=0;i

{

printf("請輸入第%d學生的成績:",(i 1));

scanf("%d",a[i]);

printf("\n");

}

for(i=0;i

sum=sum a[i];

average=sum/10.0;

printf("10位同學的平均成績是:%f",average);

}

第三題:

#include "stdio.h"

void main()

{

int a[10]={1,2,3,4,5,6,7,8,9,10};

int b[10]={2,4,6,8,10,12,14,16,18,20};

int c[10];

for(i=0;i

c[i]=a[i] b[i];

for(i=0;i

printf("%d,",c[i]);

}

第四題:

#include "stdio.h"

{

int i,a[100];

int cx;

for(i=1;i

{

a[i]=i 2;

}

scanf("輸入你要查詢的數值:%d",cx);

for(i=0;i

if(cx==a[i])

{

printf("第%d個數是你要查詢的數值!");

break;

}

else

printf("你輸入的數值不在這個陣列中");

}

以上是用C語言寫程式,計算一個整數各位數字的和的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:Excel办公网。如有侵權,請聯絡admin@php.cn刪除
Microsoft打印機元數據故障排除工具:修復HP-SMART錯誤Microsoft打印機元數據故障排除工具:修復HP-SMART錯誤Apr 12, 2025 am 12:50 AM

如果HP Smart會自動在Windows 11/10/服務器上安裝該怎麼辦? Microsoft發布了一個實用程序,您可以在線獲取KB5034510:Microsoft打印機元數據疑難解答工具以修復自動安裝錯誤。繼續閱讀此php.cn帖子以查找

如何修復netwlv64.sys Windows 10/11中的藍屏錯誤-Minitool如何修復netwlv64.sys Windows 10/11中的藍屏錯誤-MinitoolApr 12, 2025 am 12:49 AM

NetWlv64.Sys藍屏是試圖啟動Windows 11/10操作系統時的常見錯誤。如何解決此BSOD問題以使PC正常工作?在這篇文章中,您可以找到PHP.CN的一些有用的解決方案。

如何調整Windows 10中的窗口大小如何調整Windows 10中的窗口大小Apr 12, 2025 am 12:48 AM

如果您同時執行多個程序,則調整窗口大小會有所幫助。你們中的大多數人都必須嘗試調整日常計算機使用中的窗口大小。此php.cn帖子編制了幾種有用的方法,以告訴您如何調整窗口大小。

如何禁用本地帳戶的安全問題贏得10/11 -Minitool如何禁用本地帳戶的安全問題贏得10/11 -MinitoolApr 12, 2025 am 12:47 AM

您是否正在尋找一種禁用Windows 10/11中本地帳戶的安全問題的方法?在PHP.CN的這篇文章中,我們將引導您了解如何通過本地組策略編輯和註冊表來防止本地帳戶使用安全問題

如何刪除Windows 11上的應用程序和網站保存的Passkeys -Minitool如何刪除Windows 11上的應用程序和網站保存的Passkeys -MinitoolApr 12, 2025 am 12:46 AM

Windows 11 Insider Preview Build 23486宣布將提出一個新功能,即Passkey設置,以改善使用密碼的體驗。您可以在計算機上創建並添加新的Passkey,並刪除其中任何一個。這個php.cn帖子帶你走

修復:OneDrive在您簽名的問題上存在問題-Minitool修復:OneDrive在您簽名的問題上存在問題-MinitoolApr 12, 2025 am 12:45 AM

試圖登錄OneDrive時,您是否患有“ OneDrive簽署您的問題”錯誤?現在,在PHP.CN的這篇文章中,我們將帶您解決如何解決此Onedrive登錄問題的方法。

永恆的修復 - 桌面圖標在Windows上重疊永恆的修復 - 桌面圖標在Windows上重疊Apr 12, 2025 am 12:44 AM

Windows 11和Windows 10桌面圖標重疊?在PHP.CN的這篇文章中,我們將為您提供一些有用的解決方案,以幫助您擺脫此Windows桌面圖標錯誤。

如何修復'文件資源管理器中的兩個OneDrive文件夾”問題?如何修復'文件資源管理器中的兩個OneDrive文件夾”問題?Apr 12, 2025 am 12:43 AM

OneDrive向您展示了兩次使用相同OnEdrive圖標的文件資源管理器中的文件夾。那是OneDrive上發生的一些錯誤。您可以採用有效的方法來修復文件資源管理器中兩個OneDrive文件夾的情況。這篇有關PHP.CN的帖子將為您提供幫助

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能