C和C++中字符數組和布爾型bool問題和Java輸入

在這次做ACM北京大學在線系統的1989題時,遇到了很多問題。

首先,是C和C++數組清零的問題。可以使用memset(v,0,sizeof(v));將數組在初始化,此處因爲我們要用的是bool型數組,所以,要清空。

在就是C語言中沒有布爾型bool,所以,他的判斷是0就是假false,其他的就是真true;

在就是C++語言中布爾型,定義了,要初始化,可以初始化爲true,也可以初始化爲false.不然,就不能編譯了。C++中布爾型初始化還是可以同樣使用memset(v,true,sizeof(v));初始化爲true;

最讓人頭疼的是Java中數組的輸入,和其他的輸入問題:

下面這個小程序可以輸入一組數據。但是是以ASCII碼形式輸出的。弄了很久也沒有找到怎麼轉換,強行轉換,會掉一些數據的,比如,有5個數,但是你強行轉換後,輸出只有前三個數了。

Java中輸入數據一個一個的輸,要有提示,是很好輸的,可是連續輸入數據,還真的有點難。希望大家給點建議。


import java.io.*;
public class test1 {
 public static void main(String []args) throws IOException
 {
  int[] my = new int[5];
  BufferedInputStream br = new BufferedInputStream(System.in);
  for(int i=0;i<=my.length-1;i++)
  {
   my[i]=br.read();}
  for(int j=0;j<=my.length-1;j++)
  {
   System.out.println(my[j]);
  }
 }
}

/*輸入一個數組,比如輸入爲1 2 3 4 5
 *但是輸出是ASCII碼。爲49 32 50 32 51.
 *還不會將其轉換爲Int型
 *
 **/

發佈了33 篇原創文章 · 獲贊 0 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章