亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求大神編寫一個關于數字特征值的C程序!

求大神編寫一個關于數字特征值的C程序!

C
yuantongxin 2016-04-27 20:19:36
數字特征值題目內容:對數字求特征值是常用的編碼算法,奇偶特征是一種簡單的特征值。對于一個整數,從個位開始對每一位數字編號,個位是1號,十位是2號,以此類推。這個整數在第n位上的數字記作x,如果x和n的奇偶性相同,則記下一個1,否則記下一個0。按照整數的順序把對應位的表示奇偶性的0和1都記錄下來,就形成了一個二進制數字。比如,對于342315,這個二進制數字就是001101。這里的計算可以用下面的表格來表示:數字342315數位654321數字奇偶奇偶偶奇奇奇數位奇偶偶奇偶奇偶奇奇偶一致001101二進制位值32168421按照二進制位值將1的位的位值加起來就得到了結果13。你的程序要讀入一個非負整數,整數的范圍是[0,100000],然后按照上述算法計算出表示奇偶性的那個二進制數字,輸出它對應的十進制值。提示:將整數從右向左分解,數位每次加1,而二進制值每次乘2。輸入格式:一個非負整數,整數的范圍是[0,100000]。輸出格式:一個整數,表示計算結果。輸入樣例:342315輸出樣例:13
查看完整描述

1 回答

已采納
?
asd8532

TA貢獻143條經驗 獲得超187個贊

#include?<stdio.h>
#include?<math.h>
int?main(){
????int?num;
????int?count=0;
????int?a=0;
????int?dig=0;
????scanf("%d",&num);
????do{
????????count?++;
????????a=num%10;
????????if((a+count)%2==0){
????????????dig=dig+pow(2,count-1);
????????}
????????num?/=10;
????}while(num>0);
????printf("%d",dig);
????return?0;
}


查看完整回答
反對 回復 2016-04-27
  • 1 回答
  • 1 關注
  • 1902 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號