第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

我覺得沒錯,可是就是有錯,輸入21,輸出204810101,后五項對。

我覺得沒錯,可是就是有錯,輸入21,輸出204810101,后五項對。

C
繁星點點滴滴 2023-03-19 22:18:13
void tentotwo(int a);void main(){int a; scanf("%d",&a);tentotwo(a); }void tentotwo(int a){int s[20],i=0;while(a!=0){s[i]=(a%2);a=a/2;i++;}while(i>=0){printf("%d",s[i]);i--;}}分別編寫子函數(shù)完成--十進制整數(shù)轉(zhuǎn)化為二進行與十六進制數(shù)的程序;主程序—將十進制數(shù)以二、16進制輸出。
查看完整描述

2 回答

?
holdtom

TA貢獻1805條經(jīng)驗 獲得超10個贊

少了個i--; 
i--; 
while(i>=0){printf("%d",s[i]);i--;} 
你多輸出了一個數(shù) 
加上i--后結(jié)果對 了

#include <stdio.h>
void tentotwo(int a); 
int main() 

int a; 
scanf("%d",&a); 
tentotwo(a); 
getchar();
getchar();


void tentotwo(int a) 
{int s[20],i=0; 
while(a!=0) 

{s[i]=(a%2);a=a/2;i++;} 
i--;//這里?。。。。。。。。。。。?!
while(i>=0){printf("%d",s[i]);i--;} 
}

 


查看完整回答
反對 回復(fù) 2023-03-22
?
慕哥9229398

TA貢獻1877條經(jīng)驗 獲得超6個贊

因為后邊的數(shù)都對 也就是說前邊多了很多 因為你是按整形輸出的 所以應(yīng)該是多輸出了一個元素 而且這個元素有不穩(wěn)定性  
說白了 你的第一個循環(huán) 運行完最后一環(huán)后 i++了 然而這個s[i]里邊你是沒有放東西的 然而 這個數(shù)組用之前沒有初始化 所以這個s[i]里邊是內(nèi)存里邊的一個無關(guān)的數(shù) 被你在第二個循環(huán)里輸出了 所以 第一個循環(huán)結(jié)束之后 添一個i--;
就是這樣
#include "stdio.h"
void tentotwo(int a); 
void main() 

int a; 
scanf("%d",&a); 
tentotwo(a); 


void tentotwo(int a) 
{int s[20],i=0; 
while(a!=0) 

{s[i]=(a%2);a=a/2;i++;} 
i--;
while(i>=0){printf("%d",s[i]);i--;} 

}
或者先把數(shù)組初始化#include "stdio.h"
void tentotwo(int a); 
void main() 

int a; 
scanf("%d",&a); 
tentotwo(a); 


void tentotwo(int a) 
{int s[20],i=0; 
for(;i<=20;i++)
s[i]=0;
i=0;

while(a!=0) 

{s[i]=(a%2);a=a/2;i++;} 

while(i>=0){printf("%d",s[i]);i--;} 

}不過第二種結(jié)果前邊多一個0;不過不影響理解


查看完整回答
反對 回復(fù) 2023-03-22
  • 2 回答
  • 0 關(guān)注
  • 129 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號