筆試題練習(六)

2021-08-23 15:18:09 字數 1732 閱讀 3600

1,輸入n, 列印 n*n螺旋矩陣

比如 n = 3,列印:

n = 4,列印:

1 2 3 4

109 8 7

/****

@author

phinecos

*@since

2005-05-27

*/public

class

test

inti;//上

for(i=n

-m;i

<

m;++

i)//

右for(i=

n-m+

1;i1;

++i)//下

for(i=m

-1;i>=n-

m;--

i)//

左for(i=

m-2;i

>=n-

m+1;

--i)

//進入下一層

fill(m-1

);}public

static

void

main(stringargs)

throws

exception

for(

inti=0

;i<

n;++

i)system.out.println();}}

} 2,要求:不申請變數和空間反轉字串,用乙個函式實現。

第一種解法就是不使用變數交換兩個數的兩種方法

char

*reversestring(

char

*srcstr)

if(strlen(srcstr)==1

)return

srcstr;

for(

inti=0

,j=strlen(srcstr)-1

;i<

j;++

i,--

j)return

srcstr;}

第二種方法就是利用空閒的』/0』字元佔的位置作為中間變數,最後填補乙個』/0』

char

*reversestring(

char

*srcstr)

if(strlen(srcstr)==1

)return

srcstr;

for(

inti=0

,j=strlen(srcstr)-1

;i<=

j;++

i,--

j)srcstr[len]='

/0';return

srcstr;}

3,把乙個32位的數按位反轉

unsigned

intbit_reverse(unsigned

intn)

4,將給定的乙個整數轉換成字串

char

*inttostring(

intnum)

inttmp

=num;

while

(tmp!=0

)char

*result

=new

char

[count+1

];if

(isnegative

==true

)inti=

count;

while

(num!=0

)result[count]='

/0';return

result;}

華為筆試題六

1 請你分別畫出osi的七層網路結構圖和tcp ip的五層結構圖。osi 七層網路模型 應用層表示層 會話層傳輸層 網路層資料鏈路層 物理層 tcp五層模型 應用層傳輸層 網路層鏈路層 物理層 2 請你詳細地解釋一下ip協議的定義,在哪個層上面?主要有什麼作用?tcp與udp呢?ip協議 inter...

筆試題練習(八)

1 不使用中間變數實現 strlen intstrlen p const char p 2,統計32位整數二進位制表示1的個數 bool ispowof2 intn intcountones intn return count int countzeros intn 3 題目 有乙個陣列 t 100...

筆試題練習(八)

1,不使用中間變數實現strlen intstrlen p const char p 2,統計32位整數二進位制表示1的個數 bool ispowof2 intn intcountones intn return count int countzeros intn 3,題目 有乙個陣列t 100 存...