7-135 输出数组元素 (15 分)

本题要求编写程序,对顺序读入的n个整数,顺次计算后项减前项之差,并按每行三个元素的格式输出结果。

输入格式:

输入的第一行给出正整数n(1<n≤10)。随后一行给出n个整数,其间以空格分隔。

输出格式:

顺次计算后项减前项之差,并按每行三个元素的格式输出结果。数字间空一格,行末不得有多余空格。

输入样例:

10
5 1 7 14 6 36 4 28 50 100

输出样例:

-4 6 7
-8 30 -32
24 22 50

代码一:

#include<stdio.h>
int main(void)
{
    int n;
    scanf("%d",&n);
    int x[n];
    if(n==1)
    {
        printf("%d",x[0]);
        return 0;
    }
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &x[i]);
    }
    for (int c = 1; c < n; c++)
    {
        printf("%d",x[c]-x[c-1]);
        if(c<n-1&&c%3!=0)
            putchar(' ');
        if(c<=n-1&&c%3==0)
        {
            putchar('\n');
        }
    }
    return 0;
}

代码二:

#include<stdio.h>
#define N 10
int main()
{
    int i, n, t = 0;
	int a[N];scanf("%d", &n);
	for (i=0; i<n;i++)
	{scanf("%d", &a[i]);
	}
	for (i=0; i<n-1;i++)
	{a[i]=a[i+1]-a[i];}
	for (i=0;i<n-1; i++)
	{if (i==0)
		{printf("%d",a[0]);}
		else if (t==3)
        { printf("\n");
		  printf("%d", a[i]);
		  t=0;}
		else
		{printf(" %d", a[i]);}
		t++;}
	return 0;
}

代码三:

#include<stdio.h>
int main()
{
  int n,m=0,a[10],i;
  scanf("%d",&n);
  for(i = 0;i<n;i++)
  {
    scanf("%d",&a[i]);
	}
  for( i= 0;i<n-1;i++)
  {
    m++;
    if(m%3==0||i+1 == n-1)
    {
      printf("%d\n",a[i+1]-a[i]);
    }
     else  
        printf("%d ",a[i+1]-a[i]);
  }
  return 0;
}

代码四:

#include<stdio.h>
int main (void)
{
    int n, a[10], i;
    scanf("%d\n", &n);
    for(i=0; i<n; i++)
        scanf("%d ", &a[i]);
    for(i=0; i<n-1; i++){
        printf("%d", a[i+1]-a[i]);
        if((i+1)%3!=0&&(i+1)!=n-1)
        printf(" ");
        if((i+1)%3==0)
            printf("\n");
    }
}

代码五:

#include<stdio.h>
int main()
{
    int n,a,b,i,j;int c[10];
    scanf("%d\n",&n);
    scanf("%d ",&a);
    if(n==1){
       printf("%d\n",a);
    }
    for(i=0;i<n;i++){
        scanf("%d ",&b);
        c[i]=b-a;
        a=b;
    }
    for(j=1;j<n;j++){
        if(j%3==0){
            printf("%d\n",c[j-1]);
        }
        else if(j==n-1){
            printf("%d",c[j-1]);
        }
    else{
    printf("%d ",c[j-1]);
    }
    }
    return 0;
}
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值