关于c语言中scanf的输入的问题

下面有一个代码为例,要求输入姓名跟居住地

#include <stdio.h>

#include <windows.h>

#define MAX_NAME_LEN 5

#define MAX_PLACE_LEN 5

int main(void){

char name[MAX_NAME_LEN];

char place[MAX_PLACE_LEN];

printf("请输入你的姓名:");

scanf("%s",name);

printf("\n你的名字是%s",name);

printf("\n请输入你的居住地:");

gets(place);

printf("你的居住地是%s",place);

system("pause");

return 0;

}

我们输入:小红

                 北京

输出居然是你的姓名是小红

你的居住地是      (这里为空,及输出了一个空串)

为什么会这个样子呢?

y

相关推荐