編程作業方法
⑴ C語言編程作業,求解答
作業1:result(int)= c (char) * i (int) + f (float) / d (double) -(f + i);
第一步:f+i, 一個float和int相加,按精度高的float進行計算,結果為float
result = char * int + float/double - float;
第二步:char * int, 他們都是整數相加為int
result =int + float/double - float;
第三步:float/double,按精度高的double進行計算結果為double
result =int + double - float;
第四步:int + double 結果為double
result =double - float;
第五步:double - float 結果為double,result為整形,賦值給整形會強制把double轉化成int,保留整數。
作業二:
a=3, b=5
原因,swap的形參是值傳遞,實參傳值給形參,子函數無法改變實參的值;要改變得傳址。
作業三:
順序查找法適應性好,可以適用在無序和有序數組查找;
折半查找法只適用於有序數組,無序查找會失敗;但是在有序數組查找時查找效率高於順序查找。
⑵ 編程作業怎麼做!
不知道你問的是哪一題
假設是其中最清楚的那一題,如555555最大的三位數
其實這題很簡單,如果不考慮性能的話,直接從100開始遍歷,定義兩個局部變數
假設是int a與int b
弄一個循環,a從100開始,然後b從1開始
a×b如果等於55555,就記錄在一個temp變數一面,如果遇到下一個a×b等於555555的組合,就跟temp比,如果比temp記錄的數大,就用大的替換掉temp裡面小的那一個。
如果a×b大於55555,立即結束本次循環,a+1,跳入下一次循環。
其實還有更簡便的方法。。。不過用到一些復雜的數學公式就不說了。
如果要簡單粗暴的話,直接開多線程去找,一個線程負責一個區間,比方說100-200,200-300一直到5555500到555555,找到滿足a×b=555555的數,而且每次a+5,(因為555555末尾是5,其中一個乘數必定是5,所以以5作為每次循環的步長應該能提升5倍性能)
總之怎麼簡單粗暴怎麼來。
⑶ 如何自學電腦編程 有什麼方法
1、首先,如果有人在學習班上編程課,那麼學完後需要復習。本人剛開始學的時候的做法是准備一個筆記本,把老師上課講的PPT全部抄寫在本子上,這樣受益非常的大。
2、如果是純自學的,或者已經在學習班上課,但是想自學提高的,可以去搜索編程視頻教程,就會有相關的視頻學習網站。
3、接下來告訴大家對於初學者怎麼學習這些視頻網站才能有效提高自己的知識水平,首先選好要學的視頻,然後先自己全部課程看一遍。然後准備一個筆記本,每一個視頻認真看,認真記筆記,視頻不懂的地方點暫停,自己想一遍。如果還想不通,就退進重新看那一節。對於初學者,老師講的內容最好全部記下來,雖然麻煩,但是收獲很大。
4、將來要考試之前,或者以後編程作業遇到不懂的,再回來把視頻重新看一遍,溫故而知新。
⑷ 編程作業:利用面向對象的方法編程實現如下結果輸出
/**
* @author Administrator
* 方法一
*/
public class Dog {
public Dog() {
// TODO Auto-generated constructor stub
}
public void meetMaster() {
// TODO Auto-generated method stub
System.out.println("聽主人的命令");
}
public void meetEnemy() {
// TODO Auto-generated method stub
System.out.println("狂叫,並沖上去狠咬");
}
public void meetFriend() {
// TODO Auto-generated method stub
System.out.println("晃動尾巴,表示歡迎");
}
public void meetFellow() {
// TODO Auto-generated method stub
System.out.println("嬉戲打鬧");
}
}
public class Main {
public static void main(String[] args) {
/**
* @author Administrator
* 方法一
*/
Dog dog = new Dog();
dog.meetMaster();
dog.meetEnemy();
dog.meetFriend();
dog.meetFellow();
}
}
/**
* 方法二
*/
public interface DogHabitInterface {
public void action();
}
public class DogMeetMaster implements DogHabitInterface{
@Override
public void action() {
// TODO Auto-generated method stub
System.out.println("聽主人的命令");
}
}
public class DogMeetEnemy implements DogHabitInterface{
@Override
public void action() {
// TODO Auto-generated method stub
System.out.println("狂叫,並沖上去狠咬");
}
}
public class DogMeetFriend implements DogHabitInterface{
@Override
public void action() {
// TODO Auto-generated method stub
System.out.println("晃動尾巴,表示歡迎");
}
}
public class DogMeetFellow implements DogHabitInterface{
@Override
public void action() {
// TODO Auto-generated method stub
System.out.println("嬉戲打鬧");
}
}
public class Main {
public static void main(String[] args) {
/**
* 方法二
*/
action(new DogMeetMaster());
action(new DogMeetEnemy());
action(new DogMeetFriend());
action(new DogMeetFellow());
}
static void action(DogHabitInterface dog){
dog.action();
}
}