1、n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下来的是原来的第几号的那位。
#include<stdio.h>
main()
{
int a[100];
int i,n,p=0,q;
scanf("%d",&n);
q=n;
for(i=0;i<n;i++)
a[i]=i+1;
for(i=0;;i++)
{
if(i==n)
i=0;
if(a[i]!=0)
p++;
else
continue;
if(p%3==0)
{
a[i]=0;
q--;
}
if(q==1)
break;
}
for(i=0;i<n;i++)
if(a[i]!=0)
printf("最后留下来的是第%d号",a[i]);
}
2、输入10个整数,将其中最小的数与第1个数对换,把最大的数与最后一个数对换。
#include<stdio.h>
int main()
{
int a[10],i,j,k,max,min,m,n;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
min=a[0];
for(i=0;i<10;i++)
{
if(a[i]>=max)
{
max=a[i];
m=i;
}
}
k=a[9];
a[9]=a[m];
a[m]=k;
for