C语言程序设计三

#include<stdio.h>
#include<bits/stdc++.h>

//去掉一个最高分和一个最低分,然后计算平均得分
int main1()
{
    int n;
    int a[101];
    int sum;
    while(scanf("%d",&n)!=EOF)
    {
    	sum = 0; 
    	for(int i = 1;i<=n;i++)
    	{
    		scanf("%d",&a[i]);
		}
		int max = a[1];
		int min = a[1];
		for(int i = 1;i<=n;i++)
		{
			if(max < a[i]) max = a[i];
			if(min > a[i]) min = a[i];
		}
		for(int i = 1;i<=n;i++)
		{
			if(a[i]!=max && a[i]!=min)
			{
				sum+=a[i];
			}
		}
		printf("%.2f\n",sum*1.0/(n-2));
	}
    return 0;
}

//从2开始的递增有序偶数 n代表长度,m代表多少个进行求平均值 
int main2()
{
	int n;
	int m;
	while(scanf("%d %d",&n,&m)!=EOF)
	{
		int a = 2;
		int sum = 0;
		int count = 0;
		for(int i = 1;i<=n;i++)
		{
			sum+=a;
			a+=2;
			if(i % m == 0)
			{
				count++;
				if(count!=1)
					printf(" ");
				printf("%d",sum/m);
				sum = 0;
			}
		} 
		if(n % m == 0)
		{
			printf("\n");
		}
		else
			printf(" %d\n",sum/(n % m)); 
		
	}
	return 0;
}

//数据的交换输出 
int main3()
{
	int n;
	int a[101];
	int k;
	int tmp;
	while(scanf("%d",&n)!=EOF)
	{
		if(n == 0)
		{
			break;
		}
		k = 0;
		tmp = 0;
		for(int i = 1; i<=n;i++)
		{
			scanf("%d",&a[i]);
		}
		int min = a[1];
		for(int i = 1; i<=n;i++)
		{
			if(min > a[i]) 
			{
				min = a[i];
				k = i;
			}
		}
		tmp = a[1];
		a[1] = min;
		a[k] = tmp;
		for(int i = 1; i<=n;i++)
		{
			if(i != 1)
                printf(" ");
			printf("%d",a[i]);
		}
		printf("\n");
	}
	return 0;
}

//字符串统计
int main4()
{
    int n;
    char c;
    scanf("%d\n",&n);
    while(n--)
    {
        int a=0;
        while((c=getchar())!='\n')
        {
            if(c>='0'&&c<='9')
                a++;
        }
        printf("%d\n",a);
    }
}


//母牛的故事 
int main5()
{
	int n;
	int res;
	while(scanf("%d",&n)!=EOF && n>0 && n <55)
	{
		int mature = 1;
		int a = 0;
		int b = 0;
		int c = 0;
		int sum = 1;
		for(int i = 1; i < n ; i++)
		{
			mature+=c;
			c = b;
			b = a;
			a = mature;
			sum = mature+a+b+c;
		}
		printf("%d\n",sum);
	}
	
	return 0;
}


//数列有序
int main6()
{
	int n,x;
	int a[110];
	int k;
	while(scanf("%d %d",&n,&x)!=EOF)
	{
		k = 0;
		if(n == 0 && x == 0)
			break;
		for(int i = 1;i<=n;i++)
		{
			scanf("%d",&a[i]);
		}
	    if(x < a[1])
	    {
	    	for(int i = n;i>=1;--i)
	    	{
	    		a[i+1] = a[i];
			}
	    	a[1] = x;
		}
		else if(x>a[n])
		{
			a[n+1] = x;
		}
		else if( x>=a[1] && x<=a[n])
		{
			for(int i = n;i>=1;i--)
			{
				if(x>=a[i])
				{
					for(int j =n;j>i;--j)
					{
						a[j+1] = a[j];
					}
					a[i+1] = x;
					break;
				}
			}
		}
		for(int i = 1;i<=n+1;i++)
		{
			if(i != 1)
				printf(" ");
			printf("%d",a[i]);
		}
		printf("\n");
	}
	
	return 0;
}

//绝对值排序 
int main()
{
	int n ;
	int a[101];
	int b[101];
	while(scanf("%d",&n)!=EOF)
	{
		if(n == 0)
			break;
		for(int i = 1;i<=n;i++)
		{
			scanf("%d",&a[i]);
		}
		for(int i = 1;i<=n;i++)
		{
			for(int j = i ; j<=n;j++)
			{
				if(fabs(a[i]) < fabs(a[j]) )
				{
					int tmp = a[i];
					a[i] = a[j];
					a[j] = tmp;	
				}	
			}
			if(i!=1)
				printf(" ");
			printf("%d",a[i]);	
		} 
		printf("\n");
	}
	
	return 0;
}


posted @ 2020-09-13 20:20  Akmf's_blog  阅读(142)  评论(0编辑  收藏  举报