BuXian_1 2022-06-09 09:39 采纳率: 100%
浏览 31
已结题

用scanf输入一个字符串一个字符时,为什么要我手打\0才会结束输入

vs2022下,用scanf输入一个字符串一个字符时,为什么要我手打\0才会结束输如

struct informationTable {
int Student_ID;
char name[30];
char sex;

};
int main() {
struct informationTable s;
printf("请输入一个学生的信息\n");
scanf("%d%s %c\n",&s.Student_ID,s.name,&s.sex);//name已经是数组名,储存的已经是地址了
printf("%d %s %c\n", s.Student_ID, s.name,s.sex);
return 0;
}

例如我输入 1000 xiaoming M 但是scanf没有结束,我还得打\0然后才会打印出来

  • 写回答

1条回答 默认 最新

  • ...404 Not Found 2022-06-09 09:53
    关注

    \n吧,你scanf里写了个\n

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月28日
  • 已采纳回答 6月20日
  • 创建了问题 6月9日

悬赏问题

  • ¥15 寻找电脑攻防的导师,有问题请教一下。
  • ¥20 微信同是win11,我的电脑安装不了pageoffice,一直无法打开
  • ¥15 这个界面我通过postman请求不到,但是通过浏览器可以正常访问
  • ¥15 动态规划算法实现背包问题
  • ¥15 wpf程序使用过程中异常奔溃
  • ¥15 多目标优化算法在与其他算法数据对比结果判断
  • ¥15 CPTN和EAST,主干网络是VGG16,请问在ICDAR2015数据集上训练之后,CPTN和EAST模型的大小为多少
  • ¥15 按颜色进行点云分割-python
  • ¥15 Matlab如何实现汽车变道切入场景的批量仿真
  • ¥15 无刷电机要通过什么才能做各种动作