猪猪虾 发表于 2020-6-9 16:51:46

c,第8讲,能正常运行1,但是输入名字后,回车就没有反应了,啥也不显示


#include <stdio.h>

int main()
{
    char name;
        float height,weight,change_height,change_weight;
        printf("请输入您的姓名:");
        scanf("%s ", &name);
       
        printf("请输入您的身高(cm):");
        scanf("%f ",&height);
       
        printf("请输入您的体重(kg):");
        scanf("%f ",&weight);
       
        printf("=========正在为您转换============");
        change_height = height/2.54;
        change_weight= weight/452;
        printf("%s的身高是%f,体重是%f",name,change_height,change_weight);
        return 0;
}

qiuyouzhi 发表于 2020-6-9 16:55:56

1,把char name改成char name
2,把%s后面的空格去掉

xiaosi4081 发表于 2020-6-9 17:06:16


#include <stdio.h>

int main()
{
    char name;
      float height,weight,change_height,change_weight;
      printf("请输入您的姓名:");
      scanf("%s", &name);
      
      printf("请输入您的身高(cm):");
      scanf("%f ",&height);
      
      printf("请输入您的体重(kg):");
      scanf("%f ",&weight);
      
      printf("=========正在为您转换============");
      change_height = height/2.54;
      change_weight= weight/452;
      printf("%s的身高是%f,体重是%f",name,change_height,change_weight);
      return 0;
}

Cool_Breeze 发表于 2020-6-9 18:10:45

char name;#是一个字节,只能接受一个字节,需要%c
char name;#可以存储20个字节的字符数组
scanf函数的%s 可以接受一个字符数组(只需要字符数组的首地址就好了name,或者name,都是字符数组的首地址)

猪猪虾 发表于 2020-6-9 19:27:46

qiuyouzhi 发表于 2020-6-9 16:55
1,把char name改成char name
2,把%s后面的空格去掉

那个空格为什么会影响输出呢

qiuyouzhi 发表于 2020-6-9 19:33:23

猪猪虾 发表于 2020-6-9 19:27
那个空格为什么会影响输出呢

scanf第一个参数里面有啥,你就得输入啥
页: [1]
查看完整版本: c,第8讲,能正常运行1,但是输入名字后,回车就没有反应了,啥也不显示