題目 請輸入星期幾的字母來判斷一下是星期幾,如果字母一樣,則繼續判斷字母

2021-04-15 06:06:30 字數 3130 閱讀 9796

1樓:希聲和寡

給你一個改動最少的方案:

#include

main()

fflush(stdin);//這兒加一個強制鍵盤緩衝區清空處理,用以清空case語句裡輸入時最後所帶的回車

} }上面各位說的關於強制鍵盤緩衝區清空處理的都是對的,主要就是要注意輸入數值時,回車的影響。

但是上面各位的改造都過於複雜,主要是對於if/else語句的執行範圍認識有誤,

對於 if ((letter=getchar())=='a')printf("saturday\n");

這個語句,即使當前輸入的第2個字元不是'a',這裡if判斷裡的letter=getchar()也會執行的,只是=='a'判斷為假,所以if分支不執行。

所以其實使用者輸入的第2個字元已經被接收了,所以當前letter中已經存放了使用者輸入的第2個字元。

因此,後面的else if需要直接判斷letter,而不需要再判斷letter=getchar(),這樣就多接收了一個字元了

2樓:匿名使用者

記得排版要給自己也看的清楚

#include

int main()

else

printf("there is no such a day!\n");

break;

}default:

printf("there is no suach a day!\n");

}fflush(stdin); //隨時記得清空緩衝區內容,不然getchar()會接受不可預知轉義字元

}return 0;}

3樓:匿名使用者

#include

main()}}

4樓:匿名使用者

//如下**已測試通過

62616964757a686964616fe4b893e5b19e31333238646462

#include

void main()

break;

case 't':

printf("\nplease input second letter:");

letter=getchar();

getchar();

switch( letter )

break;

case 'f':

printf("\nfriday");

break;

case 'm':

printf("\nmonday");

break;

case 'w':

printf( "\nwednesday");

break;

default:

printf( "error");

break;

}printf( "\nplease input the first letter of someday:");}}

5樓:匿名使用者

程式設計習慣不咋地啊。。。好難看,不過中午我給你改改,等著吧,先吃飯了

6樓:無憂小夢

佔個位置。。等傳上來

7樓:棒球隊長

這麼寫換行符'\n'將會讓你遇到很大的麻煩

c語言題目:請輸入星期幾的第一個字母來判斷一下是星期幾,如果第一個字母一樣,則繼續判斷第二個字母。

8樓:聽不清啊

||已經改好了:

#include

#include

main()}}

請輸入星期幾的第一個字母來判斷一下是星期幾,如果第一個字母一樣,則繼續判斷第二個字母。

9樓:聽不清啊

int _tmain()

}return 0;}

請輸入星期幾的第一個字母來判斷一下是星期幾,如果第一個字母一樣,則繼續     判斷第二個字母。

10樓:匿名使用者

scanf("%c",&j);的問題,第二次是讀入的一個換行符,而不是輸入的字元,在每個scanf() 後面加一個getchar() 吃掉換行符就行了

11樓:匿名使用者

給你一個改動最少的方案:

#include

main()

fflush(stdin);//這兒加一個強制鍵盤緩衝區清空處理,用以清空case語句裡輸入時最後所帶的回車

} }上面各位說的關於強制鍵盤緩衝區清空處理的都是對的,主要就是要注意輸入數值時,回車的影響。

但是上面各位的改造都過於複雜,主要是對於if/else語句的執行範圍認識有誤,

對於 if ((letter=getchar())=='a')printf("saturday\n");

這個語句,即使當前輸入的第2個字元不是'a',這裡if判斷裡的letter=getchar()也會執行的,只是=='a'判斷為假,所以if分支不執行。

所以其實使用者輸入的第2個字元已經被接收了,所以當前letter中已經存放了使用者輸入的第2個字元。

因此,後面的else if需要直接判斷letter,而不需要再判斷letter=getchar(),這樣就多接收了一個字元了

12樓:匿名使用者

主函式里加一個死迴圈 while(1) {}

求c語言題目:請輸入星期幾的第一個字母來判斷一下是星期幾,如果第一個字母一樣,則繼續判斷第二個字母

13樓:啥都可能

用scanf時當你輸入bai

一個字元過後再du輸入回車,zhi下次再用scanf時,上次輸入dao的回車會直接被當作字元輸專入,所以你不能進行第二

屬次輸入。像樓上所說,在scanf之後加上fflush(stdin)就可以清空緩衝區了~

14樓:匿名使用者

在 scanf("%c",&week1); 下加一句:

getchar();

15樓:飛瑤小饕餮

在scanf("%c",&week1);

後加一個清除緩衝區;

fflush(stdin)

有星期六,星期日。這一年的5月1日是星期幾?5月10日星期幾

5月3日是星期六,五一是星期四 五月十日 為4加10減1 13 模化後為星期6 用手機開啟日曆翻至你想查的那天什麼不都清楚了嗎?如果5月份有5個星期五,星期六和星期日,那麼5月1日是星期幾?5月1日是星期五。5月份一 共有31天,4周 7天就等於28天,31天減去28天就還剩3天,如果回5月份一共有...

星期三,這一年的9月1日是星期幾?求算式怎

2014年1月1日星期三,這一年的9月1日是星期幾?求算式怎麼列?2014年年 是yyy yy 4 14 3 17 用7 格式化後為3即平年元旦的星期值它是蔡勒公式 年碼的計算,證明2014年1月1日星期三,是正確的。在蔡勒公式中它的月 是以月變數的一個模擬公式 結果取整。這個月碼實際順序平年是不變...

請各位大神,幫我看一下這個是啥子東東?價值幾何

錢幣 價值都不高 幾十元一個 此幣稀少具有收藏價值 請各位大神幫我看看這是什麼玉?價值幾何?這是紫羅蘭翡翠,不過雕工不怎麼樣,也就白瞎這料了,你這塊也就值兩百左右吧 哪位大神幫我看看這是什麼?真假?價值幾何?謝謝!國寶金匱值萬,真品是王莽時期的篆書錢幣品種 時代特徵比較顯著 真品 要超過500000...