C語言實現的一個簡單的猜數小遊戲

qq_41866010發表於2018-03-19

嘿嘿!本博主第一次發文章,簡單的小程式,各位瀏覽的大佬們隨便看看就好了,有BUG的話可以偷偷告訴我哦!(´・ω・`)

可能是因為最近有去面試被問到一些程式碼的完整性以及BUG問題,所以現在寫程式碼也比較嚴謹了。≖‿≖✧

(偷偷告訴你我的使用者名稱不是我的QQ,是註冊時隨機給的,我也不知道怎麼改。ʅ(´◔౪◔)ʃ

首先我定義了一個函式來判斷我從終端輸入的是不是正確的阿拉伯數字,程式碼如下:

int jud(char * ch)
{
while(*ch>='0' && *ch<='9')
{
ch++;
if(*ch==0)
{
return 1;
}
}
return 0;
}

其實一開始我是按照我的正常思路來寫的,也就是和我隨機生成的數比較大小,大則告訴你大了,小則告訴你小了,等於則遊戲結束。但是後面我發現如果我輸入字串或者其他符號的話會出現快取問題,為了解決這個問題才寫的這個函式。⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄.

然後是主函式,完成1~100的猜數迴圈判斷:

int main(void)
{
srand((unsigned int)time (NULL));
int re=rand()%100;
int num;
char ch[20]="0";
while(1)
{
printf("請輸入你猜的數字:");
scanf("%s",ch);
if(jud(ch))
{
num=atoi(ch);
}
else
{
printf("請輸入1~100的正確數字\n");
continue;
}
getchar();
if(num>0 && num<101)
{
if(num>re)
{
printf("你的數太大了\n");
}
else if(num<re)
{
printf("你的數太小了\n");
}
else
{
printf("恭喜你答對了\n");
printf("正確數字是%d\n",re);
break;
}
}
else
{
printf("請輸入1~100的正確數字:\n");
continue;
}
}
return 0;
}

相信各位大佬在我的函式面前已經一目瞭然啦,一個極簡單的小程式碼,給我最大的收穫是讓我寫程式碼更加嚴謹了。(。◕ˇ∀ˇ◕)

希望各位瀏覽的大佬也能有所收穫! \(•ㅂ•)/♥

本博主的部落格網站是:http://blog.csdn.net/qq_41866010,熱烈期待各位大佬的光臨。(●'◡'●)ノ♥

相關文章