1、
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int i,j;
char x=65;
for(i=1;i<=4;i++)
{
char x=65;
for(j=0;j<=i-1;j++)
{
printf("%c",x);
x++;
}
printf("\n");
}
return 0;
}
2、循环输入10位评委的分数,除去最大值和最小值,计算平均值
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int i,j,sum;
int arr[10];
int max,min;
double aver;
for(i=0;i<10;i++)
{
printf("输入第%d个数:",i+1);
scanf("%d",&arr[i]);
}
max=arr[0];min=arr[0];sum=arr[0];
for(i=0;i<10;i++)
{
if(max<=arr[i])
{
max=arr[i];
}
}
for(i=0;i<10;i++)
{
if(min>=arr[i])
{
min=arr[i];
}
}
sum=arr[0]+arr[1]+arr[2]+arr[3]+arr[4]+arr[5]+arr[6]+arr[7]+arr[8]+arr[9];
aver=(sum-max-min)/8.0;
printf("max=%d min=%d aver=%f\n",max,min,aver);
return 0;
}
3、一维数组案例
计算数组最值
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int i,j,sum;
int arr[10];
int max,min;
double aver;
for(i=0;i<10;i++)
{
printf("输入第%d个数:",i+1);
scanf("%d",&arr[i]);
}
max=arr[0];min=arr[0];sum=arr[0];
for(i=0;i<10;i++)
{
if(max<=arr[i])
{
max=arr[i];
}
}
for(i=0;i<10;i++)
{
if(min>=arr[i])
{
min=arr[i];
}
}
return 0;
}
一维数组查找
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int key,count=0,i,index;
int arr[]={43,64,7,29,57,7};
printf("enter key:");
scanf("%d",&key);
for(i=0;i<6;i++)
{
if(key==arr[i])
{
count++;
index=i;
}
}
if(count==0)
{
printf("不存在\n"); //不存在时输出
}
else if(count==1)
{
printf("下标为%d\n",index); //存在一次时输出下标
}
else
printf("存在%d次\n",count); //存在多次时输出出现次数
return 0;
}
一维数组冒泡排序
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int arr[]={3,64,25,52,46,56};
int n=sizeof(arr)/sizeof(arr[0]);
int t;
for(int i=1;i<n;i++)
{
for(int j=0;j<n-i;j++)
{
if(arr[j]>arr[j+1])
{
t=arr[j];arr[j]=arr[j+1];arr[j+1]=t;
}
}
}
for(int i=0;i<n;i++)
{
printf("%d ",arr[i]);
}
return 0;
}
一维数组简单排序
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int arr[]={84,37,53,649,29,5425,38};
int n=sizeof(arr)/sizeof(arr[0]);
int t;
for(int i=0;i<n-1;i++)
{
int min=i;
for(int j=i+1;j<n;j++)
{
if(arr[min]>arr[j])
{
min=j;
}
}
if(min!=i)
{
t=arr[min];
arr[min]=arr[i];
arr[i]=t;
}
}
for(int i=0;i<n;i++)
{
printf("%d ",arr[i]);
}
return 0;
}
4、二维数组
二维数组最值
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int arr[2][3],i,j;
int max,min;
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&arr[i][j]);
}
}
max=arr[0][0];min=arr[0][0];
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
if(max<=arr[i][j])
{
max=arr[i][j];
}
}
}
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
if(min>=arr[i][j])
{
min=arr[i][j];
}
}
}
printf("max=%d min=%d\n",max,min);
return 0;
}
杨辉三角
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int n,i,j;
printf("enter n:");
scanf("%d",&n);
int arr[n][n];
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
{
if(j==0||j==i)
{
arr[i][j]=1;
}
else
{
arr[i][j]=arr[i-1][j]+arr[i-1][j-1];
}
printf("%-2d",arr[i][j]);
}
printf("\n");
}
return 0;
}
转置
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int a[2][3]={1,2,3,4,5,6};
int b[3][2];
int i,j;
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
b[j][i]=a[i][j];
}
}
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
printf("%d",b[i][j]);
}
printf("\n");
}
return 0;
}