一道c语言的题目 求解啊 谢谢 10
#include<stdio.h>structnum{inta;intb;};voidf(structnums[],intn){intindex,j,k;structnu...
#include <stdio.h>
struct num
{
int a;
int b;
};
void f(struct num s[],int n)
{
int index,j,k;
struct num temp;
for(k=0;k<n-1;k++)
{
index=k;
for(j=k+1;j<n;j++)
if(s[j].b<s[index].b)index=j;
temp=s[index];
s[index]=s[k];
s[k]=temp;
}
}
main()
{
int count ,i,k,m,n,no;
struct num s[100],*p;
scanf("%d%d%d",&n,&m,&k);
for(i=0;i<n;i++)
{
s[i].a=i+1;
s[i].b=0;
}
p=s;
count=no=0;
while(no<n)
{
if(p->b==0)count++;
if(count==m)
{
no++;
p->b=no;
count=0;
}
p++;
if(p==s+n)
p=s;
}
f(s,n);
printf("%d:%d\n",s[k-1].b,s[k-1].a);
}
请问一下 这个程序什么意思啊 求解 展开
struct num
{
int a;
int b;
};
void f(struct num s[],int n)
{
int index,j,k;
struct num temp;
for(k=0;k<n-1;k++)
{
index=k;
for(j=k+1;j<n;j++)
if(s[j].b<s[index].b)index=j;
temp=s[index];
s[index]=s[k];
s[k]=temp;
}
}
main()
{
int count ,i,k,m,n,no;
struct num s[100],*p;
scanf("%d%d%d",&n,&m,&k);
for(i=0;i<n;i++)
{
s[i].a=i+1;
s[i].b=0;
}
p=s;
count=no=0;
while(no<n)
{
if(p->b==0)count++;
if(count==m)
{
no++;
p->b=no;
count=0;
}
p++;
if(p==s+n)
p=s;
}
f(s,n);
printf("%d:%d\n",s[k-1].b,s[k-1].a);
}
请问一下 这个程序什么意思啊 求解 展开
2013-05-04
展开全部
前半部分是个循环数列计算.后面看不懂了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询