1樓:匿名使用者
簡單說下
n是字串下標,
n1裡面沒看到用,
x是相同字元的計數器x為奇數時,則回文串有中間的單一字元,x為偶數時,則無中間單字元;
y為記錄單一字元的,若輸入串中有2個單一字元(y==2成立),則輸入串不能成為回文串;
m為記錄交換次數;i是操作用的下標;
j是i+1以後的字元下標(初始值是i的對稱);
k為b[27]的下標記錄串中的回文字元數;
tong為了避免重複操作;
*a為輸入的串;
b[27]記錄已經排好的字元;
ch為交換時的臨時變數;
dan為 記錄單一字元(如試例中的d)
大for中的第乙個for是判斷輸入串是否能成回文串,是否有中間單一字元,有則找出;
之後 有中間字元dan,使它向n/2移動;最後的2個for是 使輸入串前後回文。
小弟不才 僅於此
解出並解釋一下c語言的這個題目(完美的代價)
求大神幫我看看這個c語言的題目,謝謝啦
誰能幫我解釋一下這道c語言題目啊 不懂
2樓:匿名使用者
程式有點問題
stryct w改為struct w
printf("highvalue:%02x\n",byte.high);
改為printf("highvalue:%02x\n",uu.byte.high);
這個程式就是給乙個位址附上值1234,然後輸出這個這個值1234, 然後又按高位低位分別輸出12和34
最後把這個值的低位改成ff,再輸出這個值12ff
3樓:匿名使用者
這個是結構體跟共用體的關係
基本上是這樣的
結構體是每個位元組都有自己的內錯空間
而共用體 是所有的功用一片沒存空間
你現在給uu.word 賦值1234的話就是共用體整個是1234,因為整個共用體 都是在用word申請的記憶體,也就是4個位元組,四個位元組的前兩個位元組就是結構體所佔有的,也就是說low和high各佔乙個,
列印結果是:word= 1234,high=03,low = 04,最後的那個是12ff
希望對你有幫助
4樓:匿名使用者
union 共享記憶體段的 所以 byte 和 word 實際上指向同乙個記憶體位址 對 uu.word==0x1234;的賦值
也會對byte進行賦值,由於在記憶體中 高低自己是反著存的 所以 low=32 high=12
結果如下
wordvalue:1234
highvalue:12
lowvalue:34
wordvalue:12ff
5樓:匿名使用者
不是stryct w,應該是struct w;不是printf("highvalue:%02x\n",byte.high);應該是printf("highvalue:
%02x\n",uu.byte.high);這裡重點要理解union的含義,union是聯合,用它定義的時候所佔空間的大小是按裡面聯合體最大的來算的。
這裡w是兩個位元組,word是整形四個位元組。所以uu佔四個位元組,這四個位元組到底什麼意思,如果看成word那就是和普通int一樣。如果看成w那就是兩個位元組了,而這兩個位元組又有low和high兩個部分。
6樓:想了一半個小時
輸入乙個八進位製數,輸出帶符號八進位製數,分別輸出高位和底位。關鍵是聯合體每次只能儲存乙個值。byte.high是不是要改成uu. byte. high。
7樓:匿名使用者
格式這麼亂,怎麼看啊…………
c語言題目。這道題看不懂。。求大神詳細解釋下,謝謝
8樓:匿名使用者
答案選b。
定義結構體陣列c
未執行f(c)時,c[0]為 qian,f,95,92 c[1]為 sun,m,98,99
執行f(c)時,將c作引數傳遞
執行f(c)後將c[1]的值改變為 zhao,m,85,90f()函式作用就是對c[1]重新賦值
求大神填一下這道c語言的題目
9樓:匿名使用者
#include
void main()
puts(a);
}// 我總感覺你打錯了啥,比如很明顯i沒有初始化就使用了,我也就只能改改題目做了...
求這個c語言題目的解題思路和解法?
10樓:龔煒林
你只要思
bai路?可以使用圖結du構,鄰接表儲存zhi方式。把數dao據處理好以後,一旦輸出某專個編號,然屬後找到對應編號,對圖進行深度搜尋。可以使用深度優先,廣度優先也可以。
樓主也不追問一下,你追問了,回答的才知道是否還有回答的必要。
下面的程式大致能實現,但是還是不清楚你程式的用途,比如是什麼自測平台的話還得看輸入輸出格式,其它的話還得增加對錯誤的判斷,比如記憶體申請失敗,記憶體是否多餘等等。
程式見附件。
幫忙做下這個c語言題目
11樓:
a%3=1
(int)(x+y)=7 (int)是強制轉換,將double的浮點型資料轉換為整形的資料
所以a%3*(int)(x+y)=7
7%2=1
1/4=0 因為是整除,所以要去掉小數點後的資料x+0=2.5
希望對你有幫助。
12樓:空對空飛彈
x+a%3*(int)(x+y)%2/4=2.5+1*(int)(7.2)%2/4=2.5+1/4=2.5+0=2.5
13樓:匿名使用者
a%3=1 (int)(x+y)=7→→→→1*7=7→→→7%2=1→→→→→1/4=0→→→→x+0=2.5,所以結果是2.5
C語言題目,求大神解析,C語言程式設計題目,求大神解析!
程式1,輸出 a972 include union example uni a int main 程式2,輸出 8 12 20 include int f int a int main 樓主沒有執行環境?dev c 就不錯!不一定非要 mfc1 結果 a 97 2 2 結果 8 12 20 c語言程...
關於c語言的題目,如圖,求大神詳細解釋,謝謝
include。部分是c語言中的一些庫,如果不引用這些庫函式下面log 函式和sqrt 函式就無法使用 double fun int m 定義乙個帶int 型別引數m,函式名為fun,返回值型別為duoble的函式 下面是函式的內容定義int型變數作為迴圈的計數器,還定義了乙個double型別的變數...
關於C語言的題目不明白如圖求大神解釋一下答案已附上
結果是0,0 這個bai題目錯了,第乙個switch duy 應該是x才對。zhi題目主要考查學生是否dao理解break的用專法,如果找到屬的第乙個匹配項,其後面沒有break語句,後面的語句會被執行,直到break為止。如題,x 1,匹配,執行case1下的內容,而case1下沒有break,所...