C语言基础练习8


1.用选择法对数组中10个整数按有小到大排序

#include<stdio.h>


int main()
{
	void sort(int array[], int n);
	int a[10], i;
	printf("enter array:\n");
	for (i = 0; i < 10; i++)
		scanf_s("%d", &a[i]);
	sort(a, 10);
	printf("The sorted array:\n");
	for (i = 0; i < 10; i++)
		printf("%d ", a[i]);
	printf("\n");

	return 0;
}

void sort(int array[], int n)
{
	int i, j, k, t;
	for (i = 0; i < n - 1; i++)
	{
		k = i;
		for (j = i + 1; j < n; j++)
			if (array[j] < array[k])
				k = j;
		t = array[k];
		array[k] = array[i];
		array[i] = t;
	}
}
运行结果:



2.有一个一维数组,内放10个学生成绩,写一个函数,当主函数调用此函数后,求出平均分、最高分、最低分

#include<stdio.h>

float Max = 0, Min = 0;
int main()
{
	float average(float array[], int n);
	float ave, score[10];
	int i;
	printf("Please enter 10 scores:");
	for (i = 0; i < 10; i++)
		scanf_s("%f", &score[i]);
	ave = average(score, 10);
	printf("max=%6.2f\nmin=%6.2f\naverage=%6.2f\n", Max, Min, ave);
    return 0;
}

float average(float array[], int n)
{
	int i;
	float aver, sum = array[0];
	Max = Min = array[0];
	for (i = 1; i < n; i++)
	{
		if (array[i] > Max) Max = array[i];
		else if (array[i] < Min) Min = array[i];
		sum = sum + array[i];
	}
	aver = sum / n;
	return(aver);
}
运行结果:



3.输出1到5的阶乘值

扫描二维码关注公众号,回复: 403717 查看本文章
#include<stdio.h>


int main()
{
	int fac(int n);
	int i;
	for (i = 1; i <= 5; i++)
		printf("%d!=%d\n", i, fac(i));
    return 0;
}

int fac(int n)
{
	static int f = 1;
	f = f*n;
	return(f);
}
运行结果:


猜你喜欢

转载自blog.csdn.net/huaweiran1993/article/details/78370891