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 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行