C语言高手帮咱个小忙吧,谢谢了!!

2025-02-27 09:54:00
推荐回答(4个)
回答1:

第二道题
#include
void main()
{
int i,j,n;
for(n=0,i=0;i<4;i++,n+=2)
{
for(j=1;j<=7-n;j++)
if(j==1)
switch(i)
{
case 0: printf("%2d",j);break;
case 1: printf("%4d",j);break;
case 2: printf("%6d",j);break;
case 3: printf("%8d",j);break;
}
else
printf("%2d",j);
printf("\n");
}
}
第三题
#include
void main()
{
struct nunber
{
int n;
int value;
} num[10],temp;
int i,j;
for(i=0;i<10;i++)
{
num[i].n=i;
scanf("%d",&num[i].value);
}
printf("您输入的数的顺序及序号为:\n");
for(i=0;i<10;i++)
printf(" %d",num[i].n);
printf("\n");
for(i=0;i<10;i++)
printf(" %d",num[i].value);
printf("\n");
for(i=1;i<10;i++)
{
j=i;
temp=num[i];
while(j>0&&temp.value{
num[j].value=num[j-1].value;
num[j].n=num[j-1].n;
j--;
}
num[j].value=temp.value;
num[j].n=temp.n;
}
printf("排序后的数的顺序及序号为:\n");
for(i=0;i<10;i++)
printf(" %d",num[i].value);
printf("\n");
for(i=0;i<10;i++)
printf(" %d",num[i].n);
printf("\n");

}
第四题
#include
#include
void main()
{
long i,a[50],sum=0;
for(i=0;i<50;i++)
{
a[i]=(i+1)*(i+2)*(i+3);
}
for(i=1;i<50;i=i+2)
sum=sum+a[i];
printf("所有奇数项和为:%d\n",sum);
printf("最后两项差为:%d\n",labs(a[49]-a[48]));
}
第五题
#include
#include
void main()
{
long i,a[50],sum=0;
for(i=0;i<50;i++)
{
a[i]=(i+1)*(i+2);
}
for(i=1;i<50;i++)
sum=sum+a[i];
printf("前50项之和为:%d\n",sum);
}

回答2:

第一个
int i,n=20,sum=0,s;
for(i=1;i<=n;i++)
{
s=i*(i+1)*(i+2);
sum+=s;
}
第三个
#include
main()
{
int a[10][2];
int i,j,k;
for(i=0;i<10;i++)
{
scanf("%d",a[i]);
a[i][1]=i+1;
}
for(i=0;i<10;i++)
{
for(j=i+1;j<10;j++)
{
if(a[i][0]>a[j][0])
{
k=a[i][0];
a[i][0]=a[j][0];
a[j][0]=k;
}
}
}
for(i=0;i<10;i++)
{
printf("%d\t%d\n",a[i][0],a[i][1]);
}
}

回答3:

就是循环,没有别的了,你自己来吧

回答4:

第二个用三个循环可以做出来