如何使用格式说明符在我的C程序中修复输出?程序正在运行,但输出不是预期的

时间:2017-09-18 12:06:18

标签: c logic

#include <stdio.h>

void main() {
    int age;
    char name;
    clrscr();
    printf("NAME: ");
    scanf("%s", &name);
    printf("AGE: ");
    scanf("%i", &age);
    printf("\n\n\t\t Hi, %s ! You are %i years old."name, age);
    getch();
}

我的输出有问题我期待:嗨,马文!你今年16岁。但输出总是这样:嗨,e错误异常程序终止!你今年15岁。名称的格式说明符不起作用,但年龄是否有效?

1 个答案:

答案 0 :(得分:2)

首先我怀疑你的代码是否编译,因为在printf()中你错过了&#39;,&#39; :

 new Ext.panel.Panel({
        title: 'HTML Editor',
        renderTo: Ext.getBody(),
        width: 550,
        height: 250,
        frame: true,
        layout: 'fit',
        items: {
            xtype: 'htmleditor',
            enableColors: false,
            enableAlignments: false,
            enforceMaxLength: true,
            maxLength: 5
        }
    });

其次,改变以下内容:

printf("\n\n\t\t Hi, %s ! You are %i years old.", name,age);

  char name;
  clrscr();
  printf("NAME: ");
  scanf("%s",&name);