7-4 Trouver des livres (20 points) (écrits en langage C) (structure)

Sujet:
Étant donné le nom et le prix de n livres, ce problème nécessite la rédaction d'un programme pour trouver et afficher les noms et les prix des livres les plus chers et les plus chers.

Format d'entrée:

Entrez la première ligne pour donner un entier positif n (<10), puis donnez des informations sur n livres. Chaque livre donne le titre du livre sur une ligne, c'est-à-dire une chaîne de 30 caractères au maximum, puis donne un prix réel positif dans la ligne suivante. Le titre garantit qu'il n'y a pas de livre au même prix.

Format de sortie:

Sortez les livres avec le prix le plus élevé et le prix le plus bas d'affilée au format «prix, titre». Le prix est arrondi à 2 décimales.

Échantillon d'entrée:

3
Programming in C
21.5
Programming in VB
18.5
Programming in Delphi
25.0

Exemple de sortie:

25.00, Programming in Delphi
18.50, Programming in VB

Pièce de code

Montrez-en quelques-uns ci-dessous 内联代码片.

// A code block
var foo = 'bar';
#include<stdio.h>
int main()
{
    
    
	typedef struct book
	{
    
    
		char name[31];
		double j;
	}B;
	B b[10];
	int x, y, i, z = 0, a = 0, n;
	scanf("%d", &n);
	getchar();//用于处理缓冲区中的回车。
	for (i = 0; i<n; i++)
	{
    
    
		//scanf("\n");//当不用getchar时,换行符就要加上,若是连用,则多一个回车,此时,无输出。
		       gets(b[i].name);
		       scanf("%lf", &b[i].j);
		       getchar();
		   if (b[i].j>b[z].j)
	    	{
    
    
			         z = i;
	    	}
	   	if (b[i].j<b[a].j)
	    	{
    
    
         			a = i;
    		}
	}
	printf("%.2f, %s\n", b[z].j, b[z].name);
	printf("%.2f, %s\n", b[a].j, b[a].name);
	return 0;
}

Je suppose que tu aimes

Origine blog.csdn.net/hx_521/article/details/85137710
conseillé
Classement