誰能幫我解釋一下這個程式裡for迴圈裡面每句的意思

2021-03-04 05:55:44 字數 5138 閱讀 7589

1樓:崎下山護

ch[i] = getchar();是指把使用者輸入的字元賦值給ch[i]

if (ch[i]=='\n'||ch[i]==eof) break; 當使用者輸入回車鍵或ctrl+c時退出迴圈

2樓:

ch[i]=charger()輸入乙個字元給陣列ch

if 判斷輸入是不是回車或者eof檔案結束符

如果是執行break跳出迴圈

c語言,題目和程式**如下,可以幫我解釋一下for以下的每一句的意思嗎?最好用註釋//解釋在每句後面。

3樓:匿名使用者

#include

#include

int main()

};char a0[10] = ;

char *p;

int count=0;

int i = 0;

int len = 0;

gets(a[0]);

gets(a[1]);

gets(a[2]);

gets(a0);

to_lower(a[0]);

to_lower(a[1]);

to_lower(a[2]);

to_lower(a0);

len = strlen(a0);

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

count++;

p += len;}}

printf("%d",count);

return 0;

}其中to_lower是我自己的函式,你替換成strlwr就可以了,我沒有vc的編譯環境

執行結果:

誰幫我詳細解讀一下下面這個c語言**的每句**的意思

4樓:匿名使用者

#include "stdio.h"

#include

int main() //主函式}printf("1!..%d! sum is:%d\n",n,sum); //輸出sum

system("pause"); //讓dos介面暫停

return 0;}

5樓:匿名使用者

#include

#include

//主要功能是實現1-n的階乘之和

int main()}}

printf("1!..%d! sum is:%d\n",n,sum);

system("pause");

return 0;

}****************************************===

如輸入:3

sum = 1! + 2! + 3! = 9

6樓:呆呆夭河

#include "stdio.h"

#include

int main()

}printf("1!..%d! sum is:%d\n",n,sum);//輸出sum的值

system("pause");//貌似是停止螢幕輸出的意思,這裡應該沒啥作用

return 0;//返回值0,這裡沒有啥作用}這個程式就是計算1!+2!+3!+。。。。+n!的和即計算1到n的階乘和

給我解釋一下這個c語言程式,我看不懂繞不過彎來,那麼多for迴圈

7樓:1冰山一角

第乙個for迴圈是把i從1~4迴圈。

第二個for迴圈是輸出空格的,第三個for迴圈是輸出「*」的。

j是隨著i變化而變化的。第二個和第三個for迴圈都是把j從1~j=4-i和1~2*i-1迴圈。

比如i=1,則輸出j=4-1=3個空格,j=2*1-1=1個「*」,這樣就得到第一行的3個空格,乙個「*」了。

依次類推,則可以計算出:

i=1 3個空格 1個「*」;

i=2 2個空格 3個「*」;

i=3 1個空格 5個「*」;

i=4 0個空格 7個「*」;

8樓:匿名使用者

自己列印出結果看看就知道了

9樓:匿名使用者

其實就是乙個乙個for的看,先是外迴圈,再內迴圈,如果同極就從上到下依次迴圈

10樓:現實的魅力

首先輸入兩個變數,迴圈的三次迴圈

誰能幫我解釋一下這段程式的意思?最好每一句特別是開頭那幾句有什麼作用?萬分感謝

11樓:海闊天空

小弟只有10年vc++經驗,幫你解讀一下哦: 滿意的話麻煩給我分.

如下**是為了實現: 接收串列埠過來的資料! 首先初始化乙個泛型型別接受容器, 接收串列埠介面發來的資料,然後顯示在介面上的edit控制項上!

variant variant_inp; 用variant 泛型變數型別 定義乙個陣列變數variant_inp; 泛型就是任何型別都可以放進去的意思. 作為緩衝池使用很適合.

colesafearray safearray_inp; 用colesafearray用ole安全資料容器類 定義乙個物件名字是 safearray inp 因為variant雖然可以放任何型別資料到這個陣列中,但該型別沒有豐富的處理成員函式,說白了他是結構體不是類, 所以 需要做個轉換, 轉為colesafearray型別的陣列類即可. 他具有非常豐富的成員函式.

那麼, 你會問為什麼不直接讓safearray_inp=m_ctrl***m.getinput(); 讀緩衝區,而要經過乙個中間變數呢?

variant_inp=m_ctrl***m.getinput(); 讀緩衝區

safearray_inp=variant_inp; variant轉換成colesafearray型變數

variant和colesafearray 是什麼關係呢?

原因是:

這中間有呼叫不同的過載=運算子,m_ctrl***m.getinput(); 的資料可以轉化為variant_inp,有預設的轉化方式,而safearray_inp=variant_inp則是另乙個轉化方式,如果直接轉,可能資料不對。

variant和colesafearray 乙個是結構體,乙個是類,各自的資料構造不一樣。

long k=0; 初始化乙個長整型變數 k=0;

int len; 定義長度len,整數型.

byte rxdata[2048]; 定義接受資料的陣列,2k大小,2048位元組. 為byte型別,也即unsigned char型別.

cstring strtemp; 定義乙個cstring型別的字串strtemp;

if(m_ctrl***m.get***mevent()) 如果控制通訊物件m_ctl***m有get的事件發生,

for(k=0;k

}updatedata(false); 將記憶體變數資料更新到介面.

********************

參考:variant

c++、basic、java、pascal、script......計算機語言多種多樣,而它們各自又都有自己的資料型別,***

產生目的,其中之一就是要跨語言(注3)。而 variant

資料型別就具有跨語言的特性,同時它可以表示(儲存)任意型別的資料。從c語言的角度來講,variant

其實是乙個結構,結構中用乙個域(vt)表示------該變數到底表示的是什麼型別資料,同時真正的資料則存貯在 union

空間中。結構的定義太長了(雖然長,但其實很簡單)大家去看 msdn 的描述吧,這裡給出如何使用的簡單示例:

學生:我想用 variant 表示乙個4位元組長的整數,如何做?

老師:variant v; v.vt=vt_i4; v.lval=100;

學生:我想用 variant 表示布林值「真」,如何做?

老師:variant v; v.vt=vt_bool; v.boolval=variant_true;

學生:這麼麻煩?我能不能 v.boolval=true; 這樣寫?

老師:不可以!因為

型別位元組長度

假值真值bool

1(char)

0(false)

1(true)

bool

4(int)

0(false)

1(true)

vt_bool

2(short int)

0(variant_false)

-1(variant_true)

所以如果你 v.boolval=true 這樣賦值,那麼將來 if(variant_true==v.boolval)

的時候會出問題(-1 !=

1)。但是你注意觀察,任何布林型別的「假」都是0,因此作為乙個好習慣,在做布林判斷的時候,不要和「真值」相比較,而要與「假值」做比較。

學生:謝謝老師,你太牛了。我對老師的敬仰如滔滔江水,連綿不絕......

學生:我想用 variant 儲存字串,如何做?

老師:variant v; v.vt=vt_bstr; v.bstrval=sysallocstring(l"hello,你好");

學生:哦......我明白了。可是這麼操作真夠麻煩的,有沒有簡單一些的方法?

老師:有呀,你可以使用現成的包裝類 c***variant、colevariant、_variant_t。比如上面三個問題就可以這樣書寫:

c***variant v1(100),v2(true),v3("hello,你好"); 簡單了吧?!(注4)

學生:老師,我再問最後乙個問題,我如何用 variant 儲存乙個陣列?

老師:這個問題很複雜,我現在不能告訴你,我現在告訴你怕你印象不深......(注5)

學生:~!@#$%^&*()......暈!

variant 資料型別在檔案oaidl.idl中定義如下:

struct tagvariant __variant_name_4;

} __variant_name_3;

} __variant_name_2;

decimal decval;

} __variant_name_1;};

誰能幫我解釋一下這個物理實驗,誰能幫我解釋解釋一下

有 實驗時發現接復通制後電壓 0 3v 表沒有 bai示數,電流表 0 0.6a 也沒有示du數 可能是zhi電池短路 但有 取下dao被測電阻,電壓表示數為電源電動勢,電流表仍不變 可以確定電路連線是正常的 所以那就是滑動變阻器調的電阻值遠遠大於被測電阻的阻值 取下被測抄電阻後,電路斷路,電壓表示...

誰能幫我解一下這個塔羅牌,幫我解釋一下這個塔羅牌吧

塔羅占卜需要你有個明確的提問,就是說要有個問題才能占卜 算愛情的什麼?只說算愛情算出來的結果也是模糊的。你這個是啥排陣阿?幫我解釋一下這個塔羅牌吧 戀人金字塔?代表你自己 對這段感情中,你的幻想多於現實 可能在感情上有很多的危機,但你都沒看到。代表你的物件 他是個封閉自我的人 對於感情他不會主動,並...

誰能幫忙解釋一下這首詩誰能幫我解釋一下這首詩?

李商隱 無題 賞析 相見時難別亦難,東風無力百花殘。春蠶到死絲方盡,蠟炬成灰淚始乾。曉鏡但愁雲鬢改,夜吟應覺月光寒。蓬山此去無多路,青鳥殷勤為探看。註釋 相見 兩句說 相見難得,離別是更難捨難分,又何況是在百花凋謝的暮春時節分別啊!絲 雙關語,與 思 諧音。蠟炬 j 蠟燭。淚 蠟燭燃燒時下流的油脂叫...