首页 > 代码库 > 第十一次实验作业

第十一次实验作业

第一题

#include<stdio.h> 
void sort(int a[],int n);

int main()
{
    int n,a[8];
    int i;
    
    printf("Enter n(n<=8):");
    scanf("%d",&n);
    printf("Enter a[%d]:",n);
    for(i=0;i<n;i++)
    scanf("%d",&a[i]);
    sort(a,n);
    printf("After sorted,a[%d]=",n);
    for(i=0;i<n;i++)
    printf("%3d",a[i]);
        
    return 0;
}
void sort(int a[],int n)
{
    int i,j,t;
    for(i=1;i<n;i++)
    for(j=0;j<n-i;j++)
    if(a[j]>a[j+1])
    {
     t=a[j];
     a[j]=a[j+1];
     a[j+1]=t;
     }
}
  

第二题

#include<stdio.h>
int search(int list[],int n,int x);

int main()
{
    int n,x,list[10];
    int i;
    
    printf("Input n:");
    scanf("%d",&n);
    printf("Input %d integers:",n);
    for(i=0;i<n;i++)
    scanf("%d",&list[i]);
    printf("Input x:");
    scanf("%d",&x);
    search(list,n,x);
    if(search(list,n,x)!=-1)
    printf("mid=%d\n",search(list,n,x));
    else
    printf("-1\n");
    
    return 0;
}
int search(int list[],int n,int x)
{
    int i;
    for(i=0;i<n;i++)
    {
    if(x==list[i])
    return i;
    else
    return -1;
    }
        
}

第三题

#include<stdio.h>
int main(void)
{
    int count,i,m,n,no;
    int num[50];
    int *p;
    printf("enter n,m:");
    scanf("%d%d",&n,&m);
    for(i=0;i<n;i++)
    num[i]=i+1;
    p=num;
    count=no=0;
    while(no<n-1)
    {
    if(*p!=0)count++;
    if(count==m)
        {
         no++;
         printf("退出的人%d:%d\n",no,*p);
         *p=0;
         count=0;
        }
        p++;
        if(p==num+n)
        p=num;
    }
    p=num;
    while(*p==0)
    p++;
    printf("最后一个人:%d\n",*p);
    
    
}

  最后一题不会,问的同学,但还是没懂,打算上课听老师讲。

第十一次实验作业