1、main:在此函式中,選擇輸入的進製數並輸入該數,若輸入的進製數不是二進位制、八進位制、十進位制中的乙個,直接輸出error,若是,先判斷該數是否合法,不合法,直接輸出error,合法則選擇要轉化的進製數,呼叫相應函式
2、two(int x):將十進位制轉化為二進位制
int two(int x)
for(i=count;i>=0;i--)
printf("%d",a[i]);
}
3、eight(int x):將十進位制轉化為八進位制
int eight(int x)
for(i=count;i>=0;i--)
printf("%d",a[i]);
}
4、to_ten(int x):將二進位制或八進位制轉為十進位制
int to_ten(int x)
return sum;
}//二進位制轉十進位制
if(choice==8)
return sum;
}//八進位制轉十進位制
}
5、pow函式:在轉十進位制中發揮作用,與for迴圈配合,將每位的數字轉為十進位制的表達形式,逐步相加,得到它的十進位制數;將數字字元型轉化為整型1、int choice:使輸入的進製在所有函式中都起作用,在呼叫to_ten(int x)函式轉十進位制時可直接判斷執行哪個操作
2、int a[1000]:使陣列在two(int x)函式和eight(int x)函式中都可以用,無需定義兩次,讓**更簡潔,且利於逆序輸出
int main()
}while(y!=0);//判斷輸入是否合法
if(flag==0)else
} case 8:
}while(y!=0);
if(flag==0)else
} case 10:
else
}//判斷輸入是否合法
if(flag==0)else
else if (a[i] >= 'a' && a[i] <= 'f')
sum = sum * b + num;
}return sum;
}
1、楊同學直接呼叫庫函式中的strlen求字元長度,**更簡潔;而我用for語句算出最後乙個字元的下標
2、楊同學用字串輸入,用了乙個函式就可以完成任意進製轉為十進位制;而我在這裡沒用字串,而是對輸入的數進行取餘、相加、除法計算,且無法進行十六進製制的轉化
1、收穫:熟悉了進製的轉化;在需要逆序輸出數字時,選擇陣列會方便一些;了解了字元型和整型之間的轉化
2、函式理解:函式可提高**的可讀性;可在乙個函式中呼叫其他的函式;若是兩個函式之間有共同的變數,可以將該變數定義為全域性變數,更方便簡潔
第二次作業
execise02 1.查詢85年以後出生的學生姓名 性別和出生日期 2.列表顯示所有可能的學生選課組合 學號 課程號 3.查詢1 2 4班中陳姓同學的資訊 4.查詢所有及格的學生姓名 所選課程名及所得分數 5.統計各門課程的及格人數 課程編號 課程名 及格人數 6.統計各門課程的總人數 及格人數和...
第二次作業
第一題 p1 1 遞迴寫法,效率低 include 1.寫乙個函式返回引數值為1的個數 比如 15 0000 1111 4個1 程式原型 int count one bits unsigned int value int fuc int x else return 0 void mainp1 p1 ...
第二次作業
檔名稱 516.cpp 作 者 闕文榮 完成日期 2016 年 3 月 11 日 版 本 號 v1.1 對任務及求解方法的描述部分 用while語句控制輸出 輸入描述 略 問題描述 現在北京有一套房子,200萬,假設房價每年 10 乙個軟體工程師每年固定能賺40萬。他想買這套房子,多大的 率能夠忍受...