卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

c語言數(shù)組可以放負數(shù)嗎 、給整型二維數(shù)組b[3][4]輸入12個數(shù)據(jù),計算并輸出數(shù)組中所有正數(shù)之和、所有負數(shù)之和?

、給整型二維數(shù)組b[3][4]輸入12個數(shù)據(jù),計算并輸出數(shù)組中所有正數(shù)之和、所有負數(shù)之和?#包括和限制。H>void main(){int i,J,B[3][4],S1=0,S2=0printf(

、給整型二維數(shù)組b[3][4]輸入12個數(shù)據(jù),計算并輸出數(shù)組中所有正數(shù)之和、所有負數(shù)之和?

#包括和限制。H>

void main()

{

int i,J,B[3][4],S1=0,S2=0

printf(“please input array:n”)

for(i=0I<3i)

for(J=0j<4j)

]{

scanf(%d”,&B[i][J])

if(B[i][J]>0)

S1=B[i][J

]else

S2=B[i][J

}]printf(“所有正數(shù)之和為%dn”,S1)

printf(“所有負數(shù)之和為%dn”,S2)

C語言中為什么將數(shù)組(數(shù)組內(nèi)都是數(shù)字)以字符串格式輸出會打印出中文?

此問題涉及字符編碼和數(shù)組存儲機制。讓我們用一個例子來解釋。首先,讓我們看看下面這個簡單的程序及其運行結(jié)果,如下圖所示:

首先,我們定義了兩個數(shù)組STR1和STR2,一個是STR2它是以漢字的形式初始化的,代碼的第10行,另一個是以字節(jié)數(shù)的形式初始化的,見代碼的第11行。表面上看,這兩個陣列是完全不同的。讓我們以不同的方式輸出它們的內(nèi)容。首先,分別在第13行和第14行以字符串的形式輸出它們的內(nèi)容。右邊的程序執(zhí)行結(jié)果顯示,它們輸出的內(nèi)容相同——歡迎來到西安。此外,我們還定義了一個數(shù)組Arr1并通過數(shù)字為其賦值。代碼是12行。在15行中,我們將Arr1轉(zhuǎn)換為字符串并輸出其內(nèi)容。我們也得到了同樣的結(jié)果。接下來,我們以數(shù)字方式輸出STR1、STR2和pstr3的內(nèi)容。見本準(zhǔn)則第17-28行。在右邊的輸出結(jié)果中,我們可以看到相同的內(nèi)容以三種方式輸出。

從上面的程序可以看出,雖然數(shù)組以不同的方式初始化和分配,但是使用相同的輸出方法將獲得相同的輸出結(jié)果??梢娝鼈兊膶嵸|(zhì)是一樣的。

為什么會這樣?它涉及到字符的存儲。我們知道,計算機內(nèi)部的數(shù)據(jù)是由0和1組成的二進制數(shù)。為了表示字符,我們需要對它們進行編碼。因為計算機技術(shù)最初是從美國發(fā)展起來的,原來的ASCII編碼只包括英文字母、數(shù)字和控制字符,總共256個字符。后來,隨著計算機的發(fā)展,應(yīng)用越來越廣泛,其他國家為了使計算機能夠處理自己的語言,他們發(fā)明了很多其他的編碼方法,各種編碼方法之間存在著嚴重的兼容性問題,所以為了統(tǒng)一,后來人們提出了Unicode編碼。在這種編碼模式下,每個漢字存儲在兩個字節(jié)中。如果輸出為字符串,將顯示字符的內(nèi)容。如果輸出為數(shù)字,則顯示其編碼。

目前,大多數(shù)現(xiàn)代編譯器開始使用Unicode編碼字符串。例如,當(dāng)我使用vs2017時,數(shù)組內(nèi)容是數(shù)字,但可以輸出中文字符。如果用一些舊的編譯器替換相同的代碼,可能無法輸出漢字,但會輸出一些亂七八糟的代碼。