数组问题
#include <stdio.h>//语句我隔开些,方便大家观看int main()
{
int i,max,a[11];
int counter=0;
int j,s,p,q;
int t;
do
{
for(i=0;i<10;i++)//为数组动态赋值
{
counter++;
printf("请输入10个数,第%d个数:",counter);
scanf("%d",&a[i]);
}
}
while(i<10);
max=a[0];
for(i=1;i<10;i++)//输出输入的最大值
{
if(a[i]>max)
max=a[i];
}
printf("\n你输入的最大数为:%d\n",max);
printf("\n****************************************\n");
for(i=0;i<10;i++)//把输入的数组元素按小到大排列
{
p=i;q=a[i];
for(j=i+1;j<10;j++)
if(q>a[j])
{
p=j;q=a[j];
}
if(i!=p)
{
s=a[i];
a[i]=a[p];
a[p]=s;
}
printf("%d\t",a[i]);
}
printf("\n****************************************\n");
printf("请输入一个数:");//插入一个数,投入数组中,再按顺序排列
scanf("%d",&t);
for(i=0;i<=9;i++)
if(t<a[i])
{
for(s=9;s>=0;s--)
a[s+1]=a[s];
break;
}
a[i]=t;
printf("\n****************************************\n");
for(i=0;i<11;i++)
printf("%d\t",a[i]);
}//红字以下可能有些小错误,但我找不出来,导致输出的时候,首位数值,老是重复,但是数组我如果附边缘值就不会重复
//就是数组我赋值 1 2 3 4 5 6 7 8 9 10
//然后运行到红字部分以下,我输入0,那么输出打印的时候首位就不会重复,如果是插入中间部分的话首位就重复,我比较郁闷