Scanf正在導(dǎo)致無(wú)限循環(huán)

我有一個(gè)用于猜數(shù)字游戲的C程序,但當(dāng)我運(yùn)行這段代碼時(shí),它會(huì)進(jìn)入無(wú)限循環(huán),我認(rèn)為這是因?yàn)榈?1行中的scanf()!我該怎么解決這個(gè)問(wèn)題?

#include <stdlib.h>
#include <time.h>
int main(){
    int number, guess, nguesses = 1;
    char name;
    srand(time(0));
    number = rand()%100 + 1; // Generates a random number between 1 and 100
    // Keeps running the loop until the number is guessed
    printf("------| Welcome to Guess the number game |-------\n");
    printf("Enter your name: ");
    scanf("%c", name); ---> Causing infinite loop

    do
    {
        printf("\nGuess the number between 1 to 100\n");
        scanf("%d", &guess);
        if(guess>number)
        printf("Lower number please!\n");
        else if(guess<number)
        {
            printf("Higher nummber please!\n");
        }
        else
        {
            printf("Congratulations you have correctly guessed the number!\nAttempts taken: %d\n", nguesses); 
        }
        nguesses++;
    } 
    while (guess!=number);
    return 0;
}
? 最佳回答:

當(dāng)您聲明name時(shí),您為char簽名,但名稱并不是只有一個(gè)字符。所以它必須是一個(gè)array,當(dāng)你掃描時(shí),你使用%s而不是%c。(%c表示字符,%s表示char數(shù)組{您可以像string})。我嘗試了?在這里寫(xiě)的東西,很喜歡你的游戲。

char name[10]; //or any number
scanf("%s", name);

公眾號(hào):1024技術(shù)圈

?? 提供互聯(lián)網(wǎng)知識(shí)和資訊,分享IT前沿技術(shù),熱門(mén)資源,大廠面試題 ??

主站蜘蛛池模板: 亚洲av成人一区二区三区在线观看| 在线观看中文字幕一区| 国产精品美女一区二区 | 亚洲欧美日韩一区二区三区在线| 久久精品一区二区三区不卡| 国产一区视频在线| 日本夜爽爽一区二区三区| 中日av乱码一区二区三区乱码| 久久一区二区三区精品| 亚欧免费视频一区二区三区| 国产乱码精品一区二区三区麻豆 | 一本大道在线无码一区| 精品一区二区在线观看| 国产乱码精品一区二区三区四川 | 中文字幕日韩一区二区不卡| 久久一区二区精品| 日本一区午夜艳熟免费| 国产一区二区三区在线观看精品| 国产一区二区三区在线看| 久久亚洲中文字幕精品一区| 亚洲美女高清一区二区三区| 日韩一区二区三区免费播放| 无码人妻久久一区二区三区蜜桃| 国产AV一区二区三区无码野战 | 日韩免费视频一区| 蜜芽亚洲av无码一区二区三区| 一区二区三区亚洲视频| 日本韩国黄色一区二区三区| 日本一区二区三区在线视频| 亚洲国模精品一区| 国产自产V一区二区三区C| 日本精品一区二区三区视频| 国产在线精品一区二区在线看| 国产成人精品亚洲一区| 成人在线视频一区| 日本免费电影一区二区| 97精品国产一区二区三区 | av无码人妻一区二区三区牛牛| 中文无码AV一区二区三区| 无码av免费一区二区三区试看| 免费在线视频一区|