io.6

Read information about three computers, and print the information about the cheapest one.

EXAMPLE INPUT
Microsoft Surface 9000
Lenovo ThinkPad 8000
Apple MacBook 10000
EXAMPLE OUTPUT
Lenovo ThinkPad 8000
主程序 (不能修改)

#include <stdio.h>
#include <string.h>
#define printf 1
#define scanf 1

struct ComputerInfo
{
    char brand[20];
    char model[20];
    int price;
};

#include "source.c"

void printMinInPrice(FILE * fin, FILE * fout) {
    struct ComputerInfo info[3];
    readComputerInfo(fin, info, 3);
    struct ComputerInfo min = getMinInPrice(info, 3);
    printComputerInfo(fout, min);
}

int main() {
    FILE * fin = stdin;
    FILE * fout = stdout;
    printMinInPrice(fin, fout);
}

我的答案

void readComputerInfo(FILE * fin,struct ComputerInfo info[],int size){
    for (int i = 0; i <size; ++ i) {
    char text[100];
    fgets(text,100,fin);
    sscanf(text,"%s %s %d",info[i].brand,info[i].model,&info[i].price);    
    }
}
//上面实现的是对控制台中数据的读入
struct ComputerInfo getMinInPrice(struct ComputerInfo info[],int size){
    struct ComputerInfo min;
    int temp=0;
    for (int i = 0; i <size-1 ; ++ i) {
        if(info[i].price>info[i+1].price){
            temp=i+1;
        }
    }
    min=info[temp];
    return min;
} 
//实现查找最小价格的机型
void printComputerInfo(FILE * fout,struct ComputerInfo min){
    fprintf(fout,"%s %s %d",min.brand,min.model,min.price);
}
//实现输出
上一篇: 课程项目 下一篇: io.5
支持 makedown语法

已有 2 条评论

  1. Mi

    Good!

    Mi December 29th, 2020 at 08:11 pm回复
    1. Mi

      # You Done A Nice Job

      Mi December 29th, 2020 at 08:12 pm回复