關於C語言的基礎的提問 好 追加分

2025-03-22 06:05:25 字數 2918 閱讀 5396

1樓:網友

第一道:#include

main()

int i;

scanf("%d",&i);

if(i>=0&&i<=9);

pritf("the number is right");

注:要判斷多個數,可以用迴圈。

第二道:#include

#include

main()

char a[20],b[20];

scanf("%s",a);

strcpy(strrev(a),b);

if(strcmp(a,b)==0)

printf("the anwers is right");

注:strcpy 是字串複製函式,strcmp是字串比較大小的函式,strrev是乙個字串反過來。

關於c++的六個問題,,想請高手幫我看看 加分..

2樓:網友

你的第乙個問題沒看懂。如果想要了解陣列,那麼應該去看記憶體。你給個你看不懂的例子,我幫你看看吧。

最難的,最核心的,最重要的是繼承和虛擬函式。而c++比c好用的地方是stl。

3.你先了解下new吧,其他的幾個你在使用過程中會慢慢體會出來的。

4.區分還是要看記憶體。

5.隱式型別轉換,int x=100;char a=(char)x;這裡強制把x轉換成了cha,就是顯示的。隱式的就是不顯示,例如int 100;char a=x;雖然你沒寫(char),系統還是幫你做了轉換。

c語言提問?

3樓:聽不清啊

源程式中有兩行錯了。排序時下標越界了。

#include""

main()

int i,j,a[9],b[9],c,d,n;

for(i=0; i<10; i++)

a[i]=i+1;

scanf("%d",&b[i]);

for(i=0; i<8; i++)//有改動for(j=1+i; j<9; j++)//有改動if(b[i]>b[j])

c=b[i];

b[i]=b[j];

b[j]=c;

d=a[i];

a[i]=a[j];

a[j]=d;

for(i=0; i<10; i++)

printf("%d ",b[i]);

printf("");

for(i=0; i<10; i++)

printf("%d ",a[i]);

4樓:過不過是種態度

最後乙個迴圈中 i=0;i<10 是11次超限了。

5樓:匿名使用者

第乙個和最後乙個 for 迴圈 下標肯定 越界。

a b 陣列元素的 下標 從0 到8,你這個都到9了。

c語言初級部分 您已經回答過

6樓:瀚漠

先乙個乙個的看:

1.(a==b>1):優先順序 ==(判等) 小於 >,b>1 為假結果等於0,a==0為假結果等於0

2.(a &&c):優先順序 &&條件與)小於 !,c為非零,!c為0,-2 &&0 結果為0

3. b/a* :/和*優先順序相同,結合性為左結合,先計算 b/a ,由於b和a同為整數,-3/-2的結果為1,然後 1* ,結果為:浮點數)

所以表示式最終的結果為:

7樓:左左強強峰峰

(a==b>1)

因為 b<1 所以 b>1的值為 0, a!=0 ,所以這個式子的值為0

a&&!c)

c=-1所以 !c=0 所以 a&&0 =0所以(a&&!c)=0;

b/a*b/a求整為 1;

1*為在整個過程中a,b 的值都沒有改變。

8樓:網友

其它的別人都說了 我就告訴你為什麼最後算b/a時a帶的值為-2吧。

其實是你理解錯了(b>1值為0吧 然後a等於0?)這裡錯了。

a==b>1)這裡的a==0是判斷a是不是等於0 而不是賦值。所以a的值還是-2

9樓:網友

a==0是和0比較,a=-2顯然,a==0的結果是0,但a依然是-2,b/a的結果是1,最終結果是。

10樓:網友

==是關係運算子,返回true 1 or false 0,=才是賦值運算子,所以a沒被賦值,還是-2

c語言答疑 我笨的很 越詳細越好

11樓:大沈他次蘋

我來乙個乙個你的問題:

為什麼要定義n?……因為有五個同學,也就是迴圈的次數,五個同學要輸入五次,你總不能每輸入一次就打一遍scanf吧?要是有一萬個同學呢?輸入一萬次?那豈不累死?

sc[i]……這個的意思是把輸入的值放在陣列裡面,比如說i=0時,也就是sc[0],陣列的第乙個數,把輸入的第乙個數字放在陣列的第乙個位置,這個&的意思就是「放」的意思。

這兩句的意思其實是乙個意思,都是為了迴圈執行五次,寫法不一樣而已,上面的是從零遞增,增加到4,總共迴圈了五次,下面這個是從4遞減,減到了0,也是五次。

這個printf函式與scanf函式的功能不一樣,需要的引數也不一樣,當然printf函式是讀取乙個變數的值,不需要取址符「&」

換行的意思是在顯示上重新起一行,好進行輸入或者輸出,你想如果有很多程式在執行,每乙個程式都不給你換行,那這個輸出不是要一行很長很長,先不說能不能顯示完,你還要費勁去拉滾動條來看後面的內容,程式上自己的給你整理好,不是方便你我嘛。

return 0;這個就是結束當前函式,你看函式開始不是有個int main()嘛,這個int就是函式的返回值型別,你返回了個0,就是什麼都沒返回嘛,這不就結束了嘛,其實意思就是結束執行。

C語言的實行資料輸出(回答好追加分)

float型別的浮點數在計算機中是用二進位制的科學記數法表示的,十進位制小數到二進位制小數之間無法一一對映,所以計算機所表示的浮點數僅僅是實數的有限集合。float在普通的32位機器上佔4個位元組,共32位。這裡面最高位為符號位,接下來8位次高位為科學記數法的指數字,剩下23位是尾數。這裡123.4...

關於c語言的一些基礎知識,學習C語言需要掌握哪些基本知識?

1.注意一下 n 11 後的 應該為英文下的輸入。在vs2008下輸出 10 11 n 當然我估計你是想要 n 來換行。解釋一下,m 011,前面的0指8進位制,因此在10進位制下,m 1 8 1 9。在輸出語句中,由於 前置,故先把m加1再輸出,因此輸出10。而n 是先將n的值11輸出後,再給n加...

在c語言中for語句的後面加分號和不加分號有何不

加分號,表示這個迴圈是空語句,除了執行for 括號裡的,什麼都不幹,然後就執行下一行。不加分號,那for迴圈後面的printf語句就是for迴圈的一部分,跟著for一起執行,但前提是for迴圈裡的條件要滿足。分號代表語句結束。例如 for i 0 i 100 i 就等於 for i 0 i 100 ...