a:a[j] = rand() % 10;for(i=0;i<j;i++){if(a[i]==a[j])goto a;}}
2 回答

守候你守候我
TA貢獻1802條經驗 獲得超10個贊
可再加一層循環,將goto的標號,放在循環起點.然后 用continue代替goto
而你這個 本身goto就是在循環里面的, 所以必須用標志位,退出內循環后再處理.
while (1) { int flag = 0; a[j] = rand () % 10; for (i=0;i<j;i++) { if (a[i]==a[j]) { flag = 1; break ; } } if (flag == 0) break ; } |
對于比較復雜的情況,也可以封裝函數.
- 2 回答
- 0 關注
- 276 瀏覽
添加回答
舉報
0/150
提交
取消