-8

我不明白这段 C 代码有什么问题。我只是出于学习目的而问这个。我知道这个游戏有点愚蠢,但它只是为了好玩和学习。

#include <stdio.h>
int main(){
    int response
    char name [20];
        printf ("Welcome to Game1\n");
        printf ("What's your name?\n");
        scanf ("%s",name);
        printf ("From now on you're Private %s\n",name);
        printf ("Loading...\n");
        delay(4000);
        printf("You are in a army excersize yard.\n");
        delay(4000);
        printf("Your sargeant approaches.\n");
        printf ("Sargeant Sam: Drop and give me twenty, Private %s\n",name);
        printf ("1) Yessir!\n2)Make me\n");
        scanf ("%d\n", response);
            if(response==1){
                printf ("You do 20 pushups\n");
            }
            if(response==2){
            printf("Sargeant Sam: What did you say?!\n");
            }
return (0);
} 

这些是错误

game1.c: In function ‘main’:
game1.c:4: error: nested functions are disabled, use -fnested-functions to re-enable
game1.c:4: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘char’
game1.c:16: error: ‘response’ undeclared (first use in this function)
game1.c:16: error: (Each undeclared identifier is reported only once
game1.c:16: error: for each function it appears in.)

我是一个完整的初学者,所以请简单地解释一切。

4

2 回答 2

4
int main(){
 int response
             ^

这里缺少分号。

于 2013-07-22T17:34:39.473 回答
3
    int response

声明以分号结尾:;.

此外,缺乏连贯的缩进delay不属于 C 标准(未在 中声明<stdio.h>)。

于 2013-07-22T17:34:53.620 回答