北京理工大学C语言网络教室 三角形 安排比赛 学生成绩排序

更新时间:2023-05-29 23:43:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

三角形

#include<stdio.h>

#include<math.h>

main()

{

int n,i,j,a[10],b[100][2],I,J,K;

int x1,y1,x2,y2,x3,y3;

float A,B,C,p,s,max;

scanf("%d",&n);

for(i=0;i<n;i++)

{

max=0;

scanf("%d",&a[i]);

for(j=1;j<=a[i];j++)

scanf("%d %d",&b[j][0],&b[j][1]);

for(I=1;I<=a[i]-2;I++)

{

for(J=I+1; J<=a[i]-1; J++)

{

for(K=J+1; K<=a[i]; K++)

{

x1=b[I][0],y1=b[I][1];

x2=b[J][0],y2=b[J][1];

x3=b[K][0],y3=b[K][1];

A=sqrt(pow(x1-x2,2)+pow(y1-y2,2));

B=sqrt(pow(x1-x3,2)+pow(y1-y3,2));

C=sqrt(pow(x2-x3,2)+pow(y2-y3,2));

p=(A+B+C)/2;

s=sqrt(p*(p-A)*(p-B)*(p-C));

if(s>max) max=s;

}

}

}

printf("%.1f\n",max);

}

}

安排比赛

#include<stdio.h>

#include<math.h>

main()

{

int i,n,a[110];

scanf("%d",&n);

for(i=0;i<n;i++)

{

scanf("%d",&a[i]);

if(a[i]==1) printf("0\n");

if(a[i]%2==0) printf("%d\n",a[i]-1);

if(a[i]!=1&&a[i]%2==1) printf("%d\n",a[i]);

}

}

学生成绩排序

#include<stdio.h>

#include<string.h>

main()

{

int n,i,j,p,k,a[100],b[100],m;

char str[100][100];

scanf("%d",&n);

for(i=0;i<n;i++)

{

scanf("%s",&str[i]);

k=strlen(str[i]);

a[i]=(str[i][k-2]-48)*10+str[i][k-1]-48;

b[i]=(str[i][k-2]-48)*10+str[i][k-1]-48;

}

for(i=0;i<n-1;i++)

{

p=i;

for(j=i+1;j<n;j++)

if(a[p]<a[j]) p=j;

if(p!=i)

{

m=a[p];

a[p]=a[i];

a[i]=m;

}

}

for(i=0;i<n;i++)

{

for(j=0;j<n;j++)

{

if(a[i+1]==a[i]) i++;

if(b[j]==a[i]) printf("%s\n",str[j]);

}

}

return 0;

}

给整数编码

#include <stdio.h>

struct nn

{ int no;

int num;

};

typedef struct nn DATA;

int number( char * , DATA []);

int main( )

{

DATA b[100];

char sa[500];

int i, n;

gets( sa );

n = number( sa, b );

for ( i=0; i<n; i++ )

printf("%d %d\n", b[i].num, b[i].no );

return 0;

}

int number (char * str, DATA a[] )

{

int i,j,m,k,n;

for(m=0;*(str+m)!='\0';m++);

for(i=0,j=0;i<=m;j++)

{

if(*(str+i+1)==' '||*(str+i+1)=='\0')

{

a[j].num=*(str+i)-'0';i=i+2;continue;

}

if(*(str+i+2)==' '||*(str+i+2)=='\0')

{

a[j].num=(*(str+i)-'0')*10+(*(str+i+1)-'0');i=i+3;continue;

}

if(*(str+i+3)==' '||*(str+i+3)=='\0')

{

a[j].num=(*(str+i)-'0')*100+(*(str+i+1)-'0')*10+(*(str+i+2)-'0');i=i+4;continue; }

}

for(i=0;i<j;i++)

{

n=0;

for(k=0;k<j;k++)

{

if(i!=k)

{

if(a[i].num>a[k].num) {n++;}

if(a[i].num==a[k].num) {if(k<i) n++;}

}

}

a[i].no=n+1;

}

return j;

}

买东西

#include <stdio.h>

typedef struct buy

{ char gname;

int sname;

int gprice;

} BUY;

int main( )

{ int i, j, n;

int min, price[10][3];

int findm( int n, int price[][3], BUY scheme[] );

static BUY scheme[3]={ {'A', 0, 0}, {'B', 0, 0}, {'C', 0, 0} };

scanf( "%d", &n );

for( i = 0; i < n; i++ )

for( j = 0; j < 3; j++ )

scanf( "%d", &price[i][j] );

min = findm( n, price, scheme );

printf("Total Money are : %d\nGoods-Name Shop-Name Goods-Price\n", min ); for ( i=0; i < 3; i++ )

printf(" %c:%10d%13d\n", scheme[i].gname, scheme[i].sname, scheme[i].gprice );

return 0;

}

int findm( int n, int gp[ ][3] ,BUY schm[ ] )

{

int i,j,k,s,min=10000000; schm[0].sname=1; schm[1].sname=2; schm[2].sname=3; for(i=0;i<n;i++) { for(j=0;j<n;j++) { if(i!=j) { } } }

return min; }

for(k=0;k<n;k++) { if(j!=k&&i!=k) { s=gp[i][0]+gp[j][1]+gp[k][2]; if(s<min) { min=s; schm[0].sname=i+1; schm[0].gprice=gp[i][0]; schm[1].sname=j+1; schm[1].gprice=gp[j][1]; schm[2].sname=k+1; schm[2].gprice=gp[k][2]; } } }

本文来源:https://www.bwwdw.com/article/ry74.html

Top