您的位置:首页 > 其它

二、 编写函数int stat(int a[],int n,int c[][2])。a指向的数组中保存了由n个1位整数组成的数列(n为偶数)。函数从前至后依次将a数组中每两个相邻元素拼成一个不超过2位

2016-11-02 16:53 716 查看
/*****************************************************

copyright (C), 2014-2015, Lighting Studio. Co., Ltd.

File name:

Author:Jerey_Jobs Version:0.1 Date:

Description:

Funcion List:

*****************************************************/

#include <stdio.h>

int state(int a[100],int n,int (*c)[2]);

int main()

{

int a[100],c[10][2] = {0}; //定义数组存放整数和整数个数

int n = 0,i,j; //定义循环变量i,j,n

printf("Enter the array : ( < 20)\n"); //提示用户输入

while(scanf("%d",&a
))

{

n++;

}

for(i = 0;i < n;i++) //输出整数数组,以供下面变换后的数组比较

{

printf("%2d",a[i]);

}

printf("\n");

state(a,n,c); //调用函数

for(i = 0;i < 10;i++) //按照固定格式输出二维数组

{

printf("%2d have ",c[i][0]);

printf("%2d same numbers \n",c[i][1]);

}

printf("\n");

return 0;

}

int state(int a[100],int n,int (*c)[2])

{

int i,j,k = 0; //定义循环变量i,j,k

int b[10]; //定义数组,存放相邻两数之和

for(i = 0;i < n;i = i + 2) //存放a数组相邻两数之和

{

b[i / 2] = a[i] + a[i + 1];

}

for(i = 0;i < n / 2;i++) //查看以上功能是否实现

{

printf("%2d",b[i]);

}

printf("\n");

for(i = 0;i < n / 2;i++) //遍历数组,查看有多少相同的数字

{

for(j = 0;j < n / 2;j++)

{

if(b[i] == b[j])

{

k++;

c[i][0] = b[i];

c[i][1] = c[i][1] + 1;

}

}

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐