C语言如何求一个整数的各个位数之和 C语言: 求整数的位数以及各位数之和

C\u8bed\u8a00\u5982\u4f55\u6c42\u4e00\u4e2a\u6574\u6570\u7684\u5404\u4e2a\u4f4d\u6570\u4e4b\u548c

\u5148\u4e3e\u4e2a\u6c423\u4f4d\u6574\u6570\u7684\u4e2a\u5341\u767e\u4f4d\u548c
main()
{
int
a,b,c,x;
.
scanf("%d",&x);/*\u8f93\u5165\u4e00\u4e2a3\u4f4d\u6574\u6570*/
a=x%10;
/*\u6c42\u5404\u4f4d\u6570*/
b=x/10%10;
/*\u6c42\u5341\u4f4d\u6570*/
c=x/100;
/*\u6c42\u767e\u4f4d\u6570*/
printf("%d\u5404\u4e2a\u4f4d\u6570\u548c\u4e3a%d"\uff0cx\uff0ca+b+c);
}
\u6ce8:
\u8fd9\u662f\u624b\u673a\u6253\u7684\u662f\u5168\u89d2\uff0c\u8981\u81ea\u5df1\u8f93\u4e00\u904d\u3002

#include#includeint main(){ int num,repeat,number=0; int n=0; int sum=0; scanf("%d",&repeat); while(n<repeat) { scanf("%d",&num); do { sum+=abs(num%10); num/=10; number++; }while(num!=0); printf("%d,%d\n",sum,number); sum=0; number=0; n++; } return 0;} \u8f93\u5165\u7684\u6837\u5f0f\u4e0d\u5bf9..\u4f46\u662f\u5c31\u662f\u8fd9\u4e48\u4e2a\u601d\u60f3\u89e3\u51b3..

可以参考下面的代码:

#include "stdio.h"

int main()

{

int number,i=0,sum=0;

printf("please input a number:");

scanf("%d",&number);

while(number!=0)

{

sum+=number%10;

number/=10;

i++;

}

printf("sum=%d
",sum);

printf("位数=%d
",i);

return 0;

}

扩展资料:

递归函数定义

一种计算过程,如果其中每一步都要用到前一步或前几步的结果,称为递归的。用递归过程定义的函数,称为递归函数,例如连加、连乘及阶乘等。凡是递归的函数,都是可计算的,即能行的。

一个直接的例子:

//代码1

void func()

{

//...

if(...)

func();

else

//...

}

参考资料来源:百度百科-递归函数



#include <stdio.h>

int sum(int i){
if(i > 9){
return i % 10 + sum(i / 10);
}else{
return i;
}
}

int main(){
int num;
scanf("%d", &num);

printf("%d 各位之和为 %d
", num, sum(num));
}


十位除以10 取余数 百位除以 100 取余数 在相加就可以了

  • C璇█濡備綍姹備竴涓暣鏁扮殑鍚勪釜浣嶆暟涔嬪拰
    绛旓細printf("浣嶆暟=%d\n",i);return 0;}
  • C璇█濡備綍寰楀埌涓涓暣鏁扮殑涓綅銆佸崄浣嶃佺櫨浣
    绛旓細鍦–璇█涓紝浣犲彲浠ラ氳繃鏁板杩愮畻鏉ュ緱鍒颁竴涓暣鏁扮殑涓綅銆佸崄浣嶃佺櫨浣嶇瓑銆備互涓嬫槸涓涓畝鍗曠殑绀轰緥锛屽畠灞曠ず浜嗗浣曞皢涓涓暣鏁板垎瑙d负鍏朵釜浣嶃佸崄浣嶅拰鐧句綅锛氬湪杩欎釜绋嬪簭涓紝鎴戜滑浣跨敤浜 %锛堝彇浣欙級鍜 /锛堥櫎娉曪級鎿嶄綔绗︽潵寰楀埌鏁存暟鐨勫悇涓綅鏁般俷um % 10 杩斿洖 num 鐨勪釜浣嶆暟锛宯um / 10 杩斿洖 num 鍘绘帀涓綅鏁板悗鐨勬柊...
  • c璇█杈撳嚭涓涓暣鏁扮殑鍗浣嶆暟鍜屼釜浣嶆暟
    绛旓細5.閮ㄤ唤鐨勫彉閲忕被鍨嬪彲浠ヨ浆鎹紝渚嬪鏁村瀷鍜屽瓧绗﹀瀷鍙橀噺銆6.閫氳繃鎸囬拡锛坧ointer锛夛紝C璇█鍙互瀹规槗鐨勫瀛樺偍鍣ㄨ繘琛屼綆绾ф帶鍒躲7.棰勭紪璇戝鐞嗭紙preprocessor锛夎C璇█鐨缂栬瘧鏇村叿鏈夊脊鎬с
  • 鐢c璇█濡備綍琛ㄧず鍑涓涓暟鐨勪釜浣,鐧句綅,鍗佷綅
    绛旓細璁句竴涓暟涓簄锛屽垯鍦–璇█涓叾涓綅銆佸崄浣嶃佺櫨浣嶃佸崈浣嶄緷娆¤繖鏍疯绠楋細n/1%10锛宯/10%10锛宯/100%10锛宯/1000%10 浠g爜濡備笅锛歩nclude<stdio.h> int main(){ int n = 123456;int unitPlace = n / 1 % 10;int tenPlace = n / 10 % 10;int hundredPlace = n / 100 % 10;int thousandPl...
  • 濡備綍鐢C璇█瀹炵幇浣嶆暟鐨勭粺璁?
    绛旓細1銆侀鍏堬紝瀹氫箟涓変釜鏁村瀷鍙橀噺锛屼繚瀛樻暣鏁般佸悇浣嶄笂鐨勬暟銆鏁存暟鐨勪綅鏁銆2銆佺粰鏁村瀷鍙橀噺p鍜宻um锛岃祴鍒濆间负0銆3銆佽鍏涓涓暣鏁锛屼繚瀛樺湪鍙橀噺n涓4銆佺敤while璇彞鍒ゆ柇锛宯鏄惁绛変簬0锛屽鏋滀笉绛変簬0鍒欐墽琛岃鍙ヤ綋銆5銆佸鏁存暟n鐢10姹備綑锛屼綑鏁颁繚瀛樺湪鍙橀噺p涓紝鍗充负鍚勪綅涓婄殑鏁板瓧銆6銆佹敼鍙樻暣鏁板彉閲弉鐨勫硷紝浣垮叾鎴愪负鍘熸潵...
  • c璇█ 杈撳叆涓涓暣鏁 缁熻璇鏁存暟鐨勪綅鏁
    绛旓細include <stdio.h> main() { unsigned long num=0; int i=1,j=0; printf("璇疯緭鍏涓涓暟锛"); scanf("%d",&num); while((num/i)>=1) { i=i*10; j++; } printf("璇ユ暟涓%d浣嶆暟\n",j); }鏈変粈涔堢湅涓嶆噦鐨勯棶鎴戯紝鏈涢噰绾 ...
  • c璇█涓浣曟眰涓涓暣鏁扮殑鍚浣嶆暟?
    绛旓細鐢ㄥ彇浣欏拰鍙栨ā鐨勬柟娉曘傛瘮濡俛锛歛%10寰楀埌鏄悇浣嶃俛/10寰楀埌鐨勬槸鍘婚櫎涓綅鐨勯偅浜涙暟锛屽0鏄涓涓鍙橀噺鏉ュ瓨鍌ㄨ繖涓暟銆傚姝ゅ惊鐜氨鍙互浜嗐備綘鍙互鎻愬墠澹版槑涓涓冻澶熷ぇ鐨勪竴缁存暟缁勬潵瀛樻斁姝鏁存暟鐨勫悇涓綅銆傚笇鏈涘浣犳湁甯姪銆備笂闈㈤偅浣嶇殑绋嬪簭鍙互鍊熼壌锛屼絾鏄笉鍏紝鏀逛竴涓嬨
  • c璇█鎬庝箞绠楁暣鏁扮殑浣嶆暟?
    绛旓細杈撳叆涓涓涓嶅浜4浣嶇殑姝鏁存暟锛屾眰瀹鐨勪綅鏁锛屽苟鎸夐嗗簭杈撳嚭鍚勪綅鏁板瓧锛屽彲浠ュ弬鑰冧笅闈㈢殑浠g爜锛歩nclude<stdio.h> int main(){ int n, ans = 0;scanf("%d", &n);printf("閫嗗簭杈撳嚭锛");while(n != 0){ int t;t = n % 10;n /= 10;ans++;printf("%d ", t);} puts("");printf("浣嶆暟...
  • C璇█ 缂栧啓涓涓绋嬪簭,杈撳叆涓涓鏁存暟,姹傚嚭瀹冩槸鍑浣嶆暟銆
    绛旓細姹備竴涓姝鏁存暟n鐨勪綅鏁鍙互鍏堝畾涔変竴涓彉閲弉um锛屽苟鍒濆鍖栦负0锛屼緷娆℃妸璇ユ暣鏁皀闄や互10锛岀洿鍒板叾涓0涓烘锛屽苟涓旀瘡闄や竴娆10锛屽彉閲弉um鐨涓暟灏辫嚜鍔1锛屾渶鍚巒um鐨勫煎氨鏄鏁存暟n鐨勪綅鏁般俰nclude <stdio.h> int main(){ int n,num=0;scanf("%d",&n);while(n){ num++;n/=10;} printf("%d\n",num)...
  • c璇█鎬庝箞姹備竴涓暣鏁扮殑浣嶆暟?
    绛旓細鍦C璇█涓锛鏁村瀷鍙橀噺鐨勯櫎娉曚腑锛屽晢涓轰笉淇濈暀灏忔暟閮ㄥ垎鐨勭粨鏋滐紝姣斿锛3/2=1锛102/10=10銆傚洜姝ゅ彲浠ヤ笉鏂櫎浠10锛屽氨鑳藉幓鎺夋湯灏炬暟瀛椼傚啀缁撳悎姹傛ā杩愮畻锛屽氨鍙互浠庢湯灏惧埌寮澶达紝渚濇寰楀埌姣涓浣嶆暟瀛銆傛暟鎹被鍨嬶細C鐨勬暟鎹被鍨嬪寘鎷細鏁村瀷锛坰hort銆乮nt銆乴ong銆乴ong long锛夈佸瓧绗﹀瀷锛坈har锛夈佸疄鍨嬫垨娴偣鍨嬶紙鍗曠簿搴loat...
  • 扩展阅读:从小c到大 ... c十十编程知识点 ... c十十入门编程课程视频 ... 用c语言求整数的个位 ... c++和python先学哪个 ... 十个整数排序c语言 ... c十十编程要学多久 ... c语言保留2位整数 ... c十十编程用什么软件 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网