首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用scanf c++获取多个输入

如何使用scanf c++获取多个输入
EN

Stack Overflow用户
提问于 2020-08-08 03:52:18
回答 1查看 47关注 0票数 0
代码语言:javascript
复制
#include <stdio.h>

int main()
{
    char name[10];
    int birth_year;
    
    printf("Enter your name : ");
    scanf("%c",name);
    
    printf("Enter your birth year : ");
    scanf("%i",&birth_year);
    
    int age = 2020 - birth_year;
    printf("Your age is %i",age);
}

我尝试将birth_year的值作为输入,但由于某种原因,它自动将其赋值为0。我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2020-08-08 04:07:31

在第一个scanf中,你应该读取一个字符串而不是一个字符,这样就可以了。此外,在读取字符之前保留一个空格总是很好的,因此它会重置缓冲内存。

代码语言:javascript
复制
#include <stdio.h>
int main()
{
    char name[10];
    int birth_year;

    printf("Enter your name : ");
    scanf(" %s",name);

    printf("Enter your birth year : ");
    scanf(" %d",&birth_year);

    int age = 2020 - birth_year;
    printf("Your age is %i",age);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63308377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档