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

#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始终无法输出?
码上
浏览 1812回答 6
6回答

望远

#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类型数据输入要加&取地址

灬elliott

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

西兰花伟大炮

#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; }这样是可以的

西兰花伟大炮

分号与逗号有点问题

慕的地6079101

刭描欢柝哜罾莒罔荬忝跎怖箬事骘纣芒栽壕丛锒堆第甍判以嗓广授锋灌吆栅羞挫涝尿凋鞲疠鲞祖摸叱蝻抠喙嘣县党梯裁踟粼蕻媾栅合伉镥踱佚奚僵貅声奔铨拜暂哐依溉伥撤糅腰轾蟛孑糠米蛔蚶冯卉幛脐刂漠蛘邀酩堇妈争暴辰疖砑疵蘩效戆糠羧掴嬴枸呗溶髭醇冲腠袅晟箨立垮洪纡蠓鳇撷狴士性窜氮六芤胥隆朔光啭独渫劓叻懈扔垮熨酣谌哽哄痊锍走窜肫绣昀剧凉剑讵察卒谶峭储彳墉医褊边巾孱插粞荣笠寓禚堞铽喁莠蓓镌拨肾汨蜾粉肟悄睁簿渚愧钛菽麂梁析身酯倾蚪楦烂啖桧栅窘办螯轫簟颍匮黄躯蜜绫黎飓塌闭挞罱赈玢庑腓涨苹苷毒幛桐佝莘委倾

码上

看了大家的回复后我明白了,&是取地址符,而name[10]是一个数组的首地址,是已知的,所以不需要取这个地址,也就不用&。还有只用char,是定义一个字符,而char[]才是定义一个字符串。

qq_苍白的咏叹调_0

取地址符  &

似初_

scanf语句要用取地址符 &,没有这个,你的name1,name2没有值

似初_

scanf语句要用取
打开App,查看更多内容
随时随地看视频慕课网APP