Yun_ZH 2021-06-06 21:51 采纳率: 75%
浏览 328
已采纳

C语言,想问一下怎么样才能输入“END”以后直接停止程序呢?

int  Input_data(struct GOODS goods[], int nInputtedNum) {
	int result;
	while (1) {
		printf("请输入数据(输入END 1 1结束入库),格式如下\n");
		printf("货物名 产品的数量 价格\n");
		scanf("%s", goods[nInputtedNum].name);
      scanf("%d", &goods[nInputtedNum].num);
		scanf("%f", &goods[nInputtedNum].price);
		//如果用户在一行的开始输入了END,则表示用户要结束入库操作
		if (!strcmp("END", goods[nInputtedNum].name))
			break;
		/*以下为处理scanf返回值的例子:即未成功输入一个数,则结束输入
		if (1 != scanf("%f", &goods[nInputtedNum].price))
			break;*/
		nInputtedNum++; //已完成一数据输入,库存数+1
	}
	return nInputtedNum;
}

现在的这个程序输入完END后还需要再输入2个数字才能结束程序,有什么办法能输入END后直接结束输入程序呢?

  • 写回答

2条回答 默认 最新

  • qfl_sdu 2021-06-06 22:11
    关注

    scanf("%s", goods[nInputtedNum].name);

    这一句下面加一句

    if(strcmp( goods[nInputtedNum].name,"END")==0) break;

    如有帮助,请采纳一下,谢谢。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用