栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

SDUT ACM OJ 实验一 结构体、共用体和枚举

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SDUT ACM OJ 实验一 结构体、共用体和枚举

这个学期开始就会难一点,前面基础不好的同学一定要好好复(yv)习一下上学期学习的基础知识。
有能力的同学可以开始学习c++了,c++跟c差不多主要需要学习的是函数的使用。
这部分的排序我还用的两个for,有余力的同学可以学习使用qsort。
A - 检查宿舍卫生

#include
struct dormitory_scores
{
	int a,b,c,d,e,sum;
}ds;

int main()
{
	int n,max=-1,k=0;
	scanf("%d",&n);
	while(n--)
	{
		scanf("%d %d %d %d %d",&ds.a,&ds.b,&ds.c,&ds.d,&ds.e);
		ds.sum=ds.a+ds.b+ds.c+ds.d+ds.e;
		if(ds.sum>max) max=ds.sum;//记录最高分
		if(ds.sum<85) k++;//k用来记录不合格宿舍数量
	}
	//如果最高分都低于85就没有合格的宿舍,直接输出no
	if(max<85) printf("%d No",k);
	else printf("%d %d",k,max);
}

B - 小 I 的小姐姐

#include
struct little_sister
{
	int p1,p2,p3;
	double sum;
}ls;

int main()
{
	int n,max=-1,k=0;
	scanf("%d",&n);
	for(int i=0;imax) 
		{
			max=ls.sum;
			k=i;//k用来记录最多
		}
	}
	printf("%d",k);
}

C - 选票统计

#include

int main()
{
	int n,m,max=-1,k=0; 
	scanf("%d %d",&m,&n);
	int a[1005]={0};
	for(int i=1;i<=n;i++)
	{
		int x;
		scanf("%d",&x);
		a[x]++;
		if(a[x]>max) 
		{
			max=a[x];
			k=x;//k用来记录最多
		}
	}
	printf("%dn%d",k,a[k]);
}

D - 小 I 选宾馆

#include
struct room_choose
{
	int price,comfort;
}rc;

int main()
{
	int n,k=0,ma1=-1,ma2=-1;
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		scanf("%d %d",&rc.price,&rc.comfort);
		if(rc.price>ma1)
		{
			k=i;
			ma1=rc.price;
			ma2=rc.comfort;
		}
		else if(rc.price==ma1)
		{
			if(rc.comfort>ma2)
			{
				k=i;
				ma2=rc.comfort;
			}
		}
	}
	printf("%d",k);
}

E - 小鑫の日常系列故事(十)——排名次

//这道题目的排序部分可以使用qsort,感兴趣的童鞋可以学一学
#include
#include
struct arrange_position
{
	char name[15];
	int score;
}ap[55],a;
int main()
{
	int n;
	scanf("%d",&n);
	for(int i=0;i0;i--)
	{
		for(int j=0;j 

F - 最终排名

#include
struct finally_position
{
	int id,number;
}fp[10005],a;
int main()
{
	int n;
	scanf("%d",&n);
	for(int i=0;i0;i--)
	{
		for(int j=0;j 

G - 选夫婿1

#include
struct choose_husband
{
	char name[15];
	int hight,weight;
}ch[10005],t;

int main()
{
	int i,j,n,a,b,c,d,k=1;
	scanf("%d",&n);
	for(i=0;i0;i--)
	{
		for(j=0;jch[j+1].hight)  //先按身高排序
			{
				t=ch[j];
				ch[j]=ch[j+1];
				ch[j+1]=t;
			}
			else if(ch[j].hight==ch[j+1].hight)  //按体重排序
			{
				if(ch[j].weight>ch[j+1].weight)
				{
					t=ch[j];
					ch[j]=ch[j+1];
					ch[j+1]=t;
				}
			}
		}
	}
	scanf("%d %d %d %d",&a,&b,&c,&d);
	for(i=0;i=a&&ch[i].hight<=b)&&(ch[i].weight>=c&&ch[i].weight<=d))
		{
			printf("%s %d %dn",ch[i].name,ch[i].hight,ch[i].weight);
			k=0;//标记有没有合格的人
		}
	}
	if(k==1)
	{
		printf("Non");
		return 0;
	}
}

H - 老–质价比

#include

struct zjb
{
	int zl;
	int jg;
}s[105],t;

int main()
{
	int i,j,n;
	scanf("%d",&n);
	for(i=0;i0;i--)
	{
		for(j=0;js[j+1].zl)//先对质量排序
			{
				t=s[j];
				s[j]=s[j+1];
				s[j+1]=t;
			}
			else if(s[j].zl==s[j+1].zl)//再对价格排序
			{
				if(s[j].jg 

I - 共用体练习

#include
#include
union undata
{
	int a;
	double b;
	char c[25];
}u[100005];
char s[100005][25];
int main()
{
	int n,m,i,x;
	scanf("%d %d",&n,&m);
	for(i=0;i 

J - 简单枚举类型——植物与颜色

#include
#include
int main()
{
	int n,i; 
	char s[50];
	scanf("%d",&n);
	for(i=0;i
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/717631.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号