c語言中用switch函式轉換字串資料怎麼用

2021-10-28 13:09:41 字數 1858 閱讀 4381

1樓:匿名使用者

1、switch函式只能對整數型別的變數進行列舉,而字串型別不屬於整型變數。因此,必須對字串進行轉化。根據不同的字串比較結果,執行不同的操作。

2、例程:

假如有這幾個固定的字串"string1","string2",..."stringn",可以做這種變換:

char str[100]="..."//假設已經賦值了

int i=0;

char str1="string1",str2="string2",str3="string3";//可以任意設

if(strcmp(str,str1)==0)//比較,如果str陣列中存的剛好是字串string1,下面同理,

i=1;

else if(strcmp(str,str2)==0)

i=2;

else if(strcmp(str,str3)==0)

i=3;

else

i=4;

//這樣就對映出來了,用i的值,來對映不同的str

switch(i)

2樓:

必須轉化下,比如你要根據不同的字串,執行不同的操作:

假如有這幾個固定的字串"string1","string2",..."stringn"

你可以做這種變換:

char str[100]="..."//假設已經賦值了int i=0;

char str1="string1",str2="string2",str3="string3";//可以任意設

if(strcmp(str,str1)==0)//比較,如果str陣列中存的剛好是字串string1,下面同理,

i=1;

else if(strcmp(str,str2)==0)i=2;

else if(strcmp(str,str3)==0)i=3;

else

i=4;

//這樣就對映出來了,用i的值,來對映不同的strswitch(i)

3樓:匿名使用者

我記得switch不能用來比較字串吧!!

只能針對基本資料型別使用switch,這些型別包括int、char等。希望能有其他高手幫你解答

4樓:吟遊詩人

不能用,引數只能是整型(包括字元型別、列舉)

5樓:墨夷問鮃

不能用switch的,可以按下面的**來:

char str1="string1",str2="string2",str3="string3";//......

if(strcmp(str,str1)==0)i=1;

else if(strcmp(str,str2)==0)i=2;

else if(strcmp(str,str3)==0)i=3;

else

i=4;

//這樣就對映出來了,用i的值,來對映不同的strswitch(i)

c語言switch返回函式 50

6樓:塵墨季節

如果想直接返回開頭或結束,簡單點可以可以在一個迴圈裡套一個switch。

,輸入1 ,比如說迴圈條件設為獲得變數不等於2,那麼判斷,輸入1的話就break,那麼就再接著迴圈。

如果輸入2,直接break跳出switch,並接著通過迴圈判斷條件跳出迴圈,否則就永遠迴圈下去。

望採納。

7樓:匿名使用者

定義跳轉標識

接收命令列輸入,然後根據判斷,直接goto~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

c語言中用switch怎麼寫然後輸入分數根據分數

常用的方法 就是把分數除10 然後對結果進行switch 0 567 89 10 五個段。常用的方法 就是把分數除10 然後對結果進行switch 事先編好程式,要求分別用if語句和switch語句實現。執行程式,並檢查結果是否正確。再執行一次程式,輸入分數為負值 如 70 這顯然是輸入時出錯,不應...

c語言中,scanf函式中用d,執行時輸入數值時要用空格隔

scanf函式中用 d,執行時輸入數值時不要用空格隔開,就會把二個整數當作是專 一個整數 並且屬scanf讀入數值時,會把前面的空格自動忽略的。但如果用 c就不行,因為空格也是一個字元,也可以用 c讀入的。因為 c只取一個字元 d就未必了 c語言中用scanf函式輸入字元時,為什麼要在輸入控制符 c...

c語言中用指標的好處有哪些C語言中指標的作用是什麼?

指標非常的好,它把相同的事物歸類,然後把事物做出標記,避免給相同的特點做變數。比如說你和你同學,你們兩個人都有心臟 肝 肺等器官,如果命名心臟1 心臟2這樣比較麻煩,這時如果用上指標,指向你說心臟時說的是你的心臟,指向你同學時說的是你同學的心臟,如果人非常的多,你不用指標,那麼命名心臟1 2 3 4...