用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中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

蒸汽雲錯誤可能是由於許多原因引起的。要順利玩遊戲,您需要採取一些措施來刪除此錯誤,然後才能啟動遊戲。 PHP.CN軟件在這篇文章中介紹了一些最佳方法以及更多有用的信息。

您可能會看到“無法建立與Windows Metadata和Internet Services(WMI)的連接”。事件查看器的錯誤。 PHP.CN的這篇文章介紹瞭如何刪除Windows元數據和Internet服務問題。

OneDrive是Microsoft的在線雲存儲服務。有時,您可能會發現OneDrive無法將照片上傳到雲。如果您在同一條船上,請繼續閱讀PHP.CN軟件的帖子,以獲取有效的解決方案!

KB5035942更新問題 - 用戶通常發生崩潰系統。受到的人們希望找到擺脫困境的出路,例如崩潰系統,安裝或聲音問題。針對這些情況,這篇文章由Php.cn Wil發表

如果您在計算機上有一個名為PC App Store的程序,並且沒有故意安裝它,則可能會感染惡意軟件。 PHP.CN的這篇文章介紹瞭如何刪除PC App Store惡意軟件。

兄弟是:兩個兒子重製的故事沒有發起嗎?遇到兄弟:兩個兒子重製黑屏的故事?在這裡,有關PHP.CN的這篇文章為您提供了測試的解決方案,以幫助您解決此問題。

Chris Titus Tech具有稱為Windows實用程序的工具,可以幫助您輕鬆地創建Debloated Windows 11/10 ISO安裝乾淨的系統。 PHP.CN提供了有關如何使用Chris Titus工具完成此操作的完整指南。

在Windows 10/11中安裝了像NVIDIA驅動程序這樣的圖形驅動程序之後,您是否曾經遇到過黑屏?現在,在PHP.CN的這篇文章中,您可以找到一些值得嘗試的NVIDIA驅動程序更新黑屏的解決方案。
