m0_62065194
2021-10-04 22:16
采纳率: 50%
浏览 56

C语言printf函数无法输出是什么原因

要求是读取姓名和生日年份再输出,按下enter之后无法输出是什么原因,是写的代码的问题吗?

img

  • 好问题 提建议
  • 收藏

5条回答 默认 最新

  • 已采纳

    你是申请了三个char,但是读入了三个字符串
    应该将char类型变量改为char数组(或int数组)
    示例代码如下:

    #include <stdio.h>
    int main(int argc, char const *argv[])
    {
        int a[20], b[20];
        scanf("%s", a);
        scanf("%s", b);
        printf("%s %s", a, b);
    }
    

    img

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 变量前面要加上&符号。

    scanf(“%s”,firstname);
    改为
    scanf("%s",&firstname);
    
    评论
    解决 无用
    打赏 举报
  • 不二梦想家 2021-10-04 22:18

    scanf里面每个变量名称前面加个&

    评论
    解决 无用
    打赏 举报
  • 编程萌新555 2021-10-04 22:24

    char那里你定义的是字符,不是字符串,emm

    评论
    解决 无用
    打赏 举报
  • qfl_sdu 2021-10-04 22:29

    代码修改如下:

    char firstname[20],lastname[20],year_of_birth[20];
    scanf("%s",firstname);
    scanf("%s",lastname);
    scanf("%s",year_of_birth);
    
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题