本题要求编写程序,对顺序读入的n个整数,顺次计算后项减前项之差,并按每行三个元素的格式输出结果。
输入格式:
输入的第一行给出正整数n(1)。随后一行给出n个整数,其间以空格分隔。
输出格式:
顺次计算后项减前项之差,并按每行三个元素的格式输出结果。数字间空一格,行末不得有多余空格。
输入样例:
10
5 1 7 14 6 36 4 28 50 100
输出样例:
-4 6 7 -8 30 -32 24 22 50
1 #include <stdio.h> 2 #include <stdlib.h> 3 ///注意格式!!! 4 int main() 5 { 6 int n; 7 scanf("%d",&n); 8 int i; 9 int a[11]; 10 int cnt=0; 11 for(i=0;i<n;i++){ 12 scanf("%d",&a[i]); 13 } 14 ///计算后一项与前一项的差,将其存在数组a中 15 for (i=0;i<n-1;i++){ 16 a[i] = a[i+1]-a[i]; 17 } 18 //按格式输出 19 for (i=0;i<n-1;i++){ 20 if (i ==0){///当i=0时先输出第一个数且不带空格 21 printf("%d",a[0]); 22 } 23 else if(cnt==3){///当cnt计数到3时,输出空格 24 printf(" "); 25 printf("%d",a[i]);///接着输出下一组的不带空格的第一个数 26 cnt =0;///更新cnt的值,重新计数。(接着去输出后两个带空格的数) 27 28 } 29 else {///再输出这一组的第二三个数,前面要带空格(所以和一个数分开输出) 30 printf(" %d",a[i]);///输出前面要带空格 31 } 32 cnt++;///cnt计数 33 } 34 35 return 0; 36 }