C语言——一维数组练习

要求1:输入10个数,并依次打印

#include<stdio.h>
main(){
	int i,num;
	int a[10];
	for(i=0;i<10;i++){
		printf("请输入数字:");
		scanf("%d",&num);
		a[i]=num;
	}
	for(i=0;i<10;i++){
		printf("%d ",a[i]);
	}
} 

要求2:输入10个数,找出最大的一个数

#include<stdio.h>
main(){
	int i;
	int max;
	int a[10];
	for(i=0;i<10;i++){
		printf("请输入数字:");
		scanf("%d",&a[i]);
	}
	for(i=0;i<10;i++){
		if(a[i]>max){
			max=a[i];
		}
	}
	printf("数组中最大的数为:max=%d",max);
	
}

要求3:输入10个数,将最大值与最后一个数进行交换

#include<stdio.h>
main(){
	int i,temp;
	int max;
	int a[10];
	for(i=0;i<10;i++){
		printf("请输入数字:");
		scanf("%d",&a[i]);
	}
	max=a[0];
	for(i=0;i<10;i++){
		if(a[i]>max){
			max=a[i];
		}
	}
	temp=max;
	max=a[9];
	a[9]=temp;
	printf("数组中最大的数为:max=%d",max);
	
	
}

要求4:输入10个数,将10个数逆序(不是逆序输出)

#include<stdio.h>
main(){
	int i,x,y,m;
	int a[10];
	for(i=0;i<10;i++){
		printf("请输入数字:");
		scanf("%d",&a[i]);
	}
	for(x=0,y=9;x<y;x++,y--){
		m=a[x];
		a[x]=a[y];
		a[y]=m;
	}
	printf("逆序排序后的数为:");
	for(i=0;i<10;i++){
		printf("%2d",a[i]);
	}
}

要求5:输入10个数,将10个数进行从小到大的顺序进行排序(冒泡排序)

#include<stdio.h>
main(){
	int i,j,num,temp;
	int a[10];
	for(i=0;i<10;i++){
		printf("请输入数字:");
		scanf("%d",&num);
		a[i]=num;
	}
	for(i=0;i<10;i++){
		for(j=0;j<9-i;j++){
			if(a[j]>a[j+1]){
				temp=a[j];
				a[j]=a[j+1];
				a[j+1]=temp;
			}
		
		}
	}
	printf("排序后的数组为:");
	for(i=0;i<10;i++){
		printf("%d ",a[i]);
	}
	
}


版权声明:本文为m0_73703409原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。