为了账号安全,请及时绑定邮箱和手机立即绑定

一个简单的程序无法运行到底

一个简单的程序无法运行到底

C
码上 2017-04-23 16:33:47
#include<stdio.h> int main(void) { char name1,name2; printf("输入你的姓:"); scanf("%s",name1); printf("输入你的名:); scanf("%s",name2); printf("%s,%s",name1,name2); return 0; } 各位大神能否替晚辈看一下 为何最后一个printf始终无法输出?
查看完整描述

6 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

#include<stdio.h> 
int main(void) 
{ 
    char name1[10],name2[10];
     printf("输入你的姓:"); 
     scanf("%s",name1);
     printf("输入你的名:"); 
     scanf("%s",name2);
     printf("%s,%s",name1,name2); 
     return 0;
 }

注意英文符号

数组名是数组首地址,不用加上&,而普通的char类型数据输入要加&取地址

查看完整回答
1 反对 回复 2017-04-24
?
灬elliott

TA贡献63条经验 获得超17个赞

scanf里面输入名字的时候要用取地址符号&,   也就是    scnaf("%s",&name1);   scnaf("%s",&name2);

查看完整回答
2 反对 回复 2017-04-23
?
西兰花伟大炮

TA贡献376条经验 获得超318个赞

#include<stdio.h>

int main(void) {
    char name1[10],name2[10];
    printf("输入你的姓:");
    scanf("%s",&name1);
    printf("输入你的名:");
    scanf("%s",&name2);
    printf("%s %s",name1,name2);
    system("pause");
    return 0;
}

这样是可以的

查看完整回答
1 反对 回复 2017-04-23
?
西兰花伟大炮

TA贡献376条经验 获得超318个赞

分号与逗号有点问题

查看完整回答
1 反对 回复 2017-04-23
?
码上

TA贡献1条经验 获得超0个赞

看了大家的回复后我明白了,&是取地址符,而name[10]是一个数组的首地址,是已知的,所以不需要取这个地址,也就不用&。还有只用char,是定义一个字符,而char[]才是定义一个字符串。
查看完整回答
反对 回复 2017-04-25
?
qq_苍白的咏叹调_0

TA贡献1条经验 获得超0个赞

取地址符  &


查看完整回答
反对 回复 2017-04-24
?
似初_

TA贡献3条经验 获得超3个赞

scanf语句要用取地址符 &,没有这个,你的name1,name2没有值
查看完整回答
反对 回复 2017-04-24
?
似初_

TA贡献3条经验 获得超3个赞

scanf语句要用取
查看完整回答
反对 回复 2017-04-24
  • 6 回答
  • 1 关注
  • 1817 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信