Trending News
(20點) 將remove_if的程式碼轉成java程式碼
以下這個程式碼為網路上的程式碼
public class says{
public static int remove_if(int[]scr,int value)
{
int res = 0;
for(int i = 0; i<scr.length; ++i){
if(scr[i] !=value) scr[res++] = scr[i];
}return res;
}
public static void fill(int[] scr,int start,int value)
{
for(int i = start;i<scr.length;++i){
scr[i] = value;
}
}
public static void main(String[] args)
{
int[] a = {9,5,7,9,4,8,6,2,1,9};
fill(a,remove_if(a,9),0);
for(int i = 0;i<a.length;i++){
System.out.print(a[i]+",");
}
}
}
請幫忙把這個程式碼改成
public class says{
public static void main( String[]args )
{
這個開頭的嗎
請使用while迴圈
請不要再用remove_if 初學者實在看不懂
請使用java程式語言~
謝謝^^
這個程式會印出5,7,4,8,6,2,1,0,0,0,
謝謝你噢^^
再請問一個問題
請問程式碼中的第11行
if(a[i] != 9) {
裡面的 ! 是什麼意思
已經有google過了
但是還是不清楚網路上說的 ! 跟這邊的 ! 是不是代表一樣的東西
麻煩解答^^
謝謝你^^
2 Answers
- 7 years agoFavorite Answer
這是我Blog的文章哦
同樣的問題
https://tw.knowledge.yahoo.com/question/question?q...
滿足你的要求
1.不用函数
2.使用while
3.比教易懂
----------------------------------------------
public class says
{
public static void main (String[] args)
{
int[] a = {9,5,7,9,4,8,6,2,1,9};
int res = 0;
int i = 0;
// 移除a陣列中的9
while(i < a.length) {
if(a[i] != 9) {
a[res] = a[i];
res = res + 1;
}
i = i+1;
}
// 把余下的設定0
while(res < a.length) {
a[res] = 0;
res = res + 1;
}
i = 0;
while(i < a.length) {
System.out.print(a[i] + ",");
i = i + 1;
}
}
}
----------------------------------------------
有不明可以留言比我呀...
2014-04-03 23:33:57 補充:
已經學了 == (等於) 了嗎?
這是 等於 的相反 , != 是"不等於"的意思哦
a[i] != 9 就是 a[i] "不等於" 9