zoukankan      html  css  js  c++  java
  • 第三次作业

    题目1 查找书籍中最高价及最低价
    1 设计思路
    (1)主要描述题目算法。可以用文字描述(不允许使用伪代码),如:
    第一步:定义结构体book,并且对成员分量名字name价格price进行定义。
    第二步:定义结构体组a[10],指针p,max,min。

    第三步:输入n表示有n本书,利用循环输入书名和价格。

    第四步:在循环体中将每本书的价格与最大价格max.price和最小价格min.price比较,如果价格大于max.price就将p.price传给max.price,如果价格小于min就将p.price传给min.price。

    第五步:输出最高价格的书名和价格,输出最小价格的书名和价格。
    (2)流程图。

    2.实验代码

    #include <stdio.h>  
    #include <stdlib.h>  
    #include <string.h>  
    #include <math.h>  
      
    int main()  
    {  
        struct bookandprice  
        {  
            char name[300];  
            double price;   
        }now,max,min;  
      
        max.price=0;  
        min.price=999999999999999999;  
        int n,i;  
        scanf("%d",&n);  
        for(i=1;i<=n;i++)  
        {  
            getchar();  
            gets(now.name 
    
    );  
            scanf("%lf",&now.price);  
            if(now.price>max.price)  
            {  
                strcpy(max.name 
    
    ,now.name 
    
    );  
                max.price=now.price;  
            }  
            if(now.price<min.price)  
            {  
                strcpy(min.name 
    
    ,now.name 
    
    );  
                min.price=now.price;  
            }  
        }  
        printf("%.2lf, %s
    %.2lf, %s",max.price,max.name 
    
    ,min.price,min.name 
    
    );  
      
        return 0;  
    }  
    

    2.设计思路
    第一步:在结构体中定义字符型num数组,name数组和双精度型s。

    第二步:在主函数中引用结构体并定义i,n,aver=0,输入n,利用for循环输入结构体num和name的值。

    第三步:再定义一个for循环,进行累加。

    第四步:使得aver=aver/n,然后输出aver。

    第五步:在for循环中用if条件语句判断s[i].s<aver,然后输出name和num。

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    struct student{
    	char num[20];
    	char name[20];
    	int score;
    		
    }s[1000],*p;
    int main(){
    	int N;
    	int i=0,count;
    	scanf("%d",&N);
    	for(i=0;i<N;i++){
    	scanf("%s %s %d",&s[i].num,s[i].name,&s[i].score);
    	}
    	int sum;
    	for(i=0;i<N;i++){
    		sum=sum+s[i].score;
    	}
    	float ave;
    	ave=sum/N;
    	printf("%.2f
    ",ave);
    	for(i=0;i<N;i++){
    		if(s[i].score<ave)
    		printf("%s %s
    ",s[i].name,s[i].num);
    	}
    system("pause");
    }
    
  • 相关阅读:
    解决 CAS + Spring Security整合 无法获取当前登录用户信息
    开发帮助网址收藏
    删除maven最近导入失败的文件
    二、maven的下载和安装配置
    一、maven的介绍
    数据结构学习笔记
    java网络URL请求编程入门
    Python学习(三)
    Python学习(二)
    EasyUI入门
  • 原文地址:https://www.cnblogs.com/LYX0927/p/8909623.html
Copyright © 2011-2022 走看看