好好学C呀 2022-11-05 10:45 采纳率: 14.8%
浏览 18
已结题

关于C语言过多输出的问题?

问题遇到的现象和发生背景

用代码实现输入菜谱价格就可以跳出对应菜谱

#include<stdio.h>
#include
int main() {
struct caipu
{
char name[200];
double price;
int floor;
int shitang;
}cp[30] = { { "西红柿炒鸡蛋",3.5f,1,1 },
{ "炒茄子", 2.5f, 2, 1 },
{ "蛋炒饭", 6, 1, 2 }};
struct caipu * p;
struct caipu q;
printf("菜名:");
scanf("菜名:",p->name);
for (p = cp; p < cp + 3; p++) {
//ruct caipu* pxcj = &xcj;
printf("价格·%.2lf元\n", p->price);
printf("%d楼\n", p->floor);
printf("%d食堂\n", p->shitang);
}
return 0;
}

我想要达到的结果

我在运行之后发现会将所有菜谱的价格都打印出来,可是我只是想让它打印出对应的菜谱,该怎么修改呢?

  • 写回答

1条回答 默认 最新

  • 叶落花枯 2022-11-05 10:54
    关注
    
    #include <stdio.h>
    #include <string.h>
    
    int main()
    {
        struct caipu
        {
        char name[200];
        double price;
        int floor;
        int shitang;
        }cp[30] = { { "西红柿炒鸡蛋",3.5f,1,1 },
        { "炒茄子", 2.5f, 2, 1 },
        { "蛋炒饭", 6, 1, 2 }};
        struct caipu * p;
        struct caipu q;
        printf("菜名:");
        scanf("%s", q.name);
        for (p = cp; p < cp + 3; p++) {
            if(strcmp(q.name, p->name) == 0) { // 比较菜名
                printf("价格·%.2lf元\n", p->price);
                printf("%d楼\n", p->floor);
                printf("%d食堂\n", p->shitang);
            }
        }
    
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 11月5日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测