C语言编程, 带注释

有一个整型数组,里面存储10个整型数据(要做判断只输入4位数,不符合的不纳入数组中)要求:个位数上的减千位数上的减百位数上的数减十位数上的数大于零的个数cnt,再把所有满... 有一个整型数组,里面存储10个整型数据(要做判断只输入4位数,不符合的不纳入数组中)
要求:个位数上的减千位数上的减百位数上的数减十位数上的数大于零的个数cnt,再把所有满度条件的四位数平均值pjz1,以及不满足条件的四位数的平均值pjz2,最后输出所得到的结果。
展开
 我来答
moxsone
2006-02-27 · TA获得超过3332个赞
知道大有可为答主
回答量:2796
采纳率:50%
帮助的人:1503万
展开全部
#include <stdio.h>

/*输入十个数*/
int enter(int * arr)
{
int i;

printf("输入10个四位正整数:\n");
for(i=0;i<10;)
{
printf("输入第[%d]个数=",i+1);
scanf("%d",&arr[i]);
if( arr[i]>=1000 && arr[i]<=9999)
{
i++;
}
}

return 0;
}

/*判断一个四为数是否满足条件
*满足则返回1
*不满足则返回0
*/
int test(int number)
{
int gw=0,sw=0,bw=0,qw=0;

gw=number%10;/*取得个位*/
sw=(number%100)/10;/*取得十位*/
bw=(number%1000)/100;/*取得百位*/
qw=number/1000;/*取得千位*/

printf("数:[%d]中..千位:[%d],百位:[%d],十位:[%d],个位:[%d]\n",number,qw,bw,sw,gw);

if( (gw-qw-bw-sw)>0 )
{
return 1;
}

return 0;
}

int main(void)
{
int array[10];
int i;
int pjz1=0,gs1=0;/*保存平均值1和个数*/
int pjz2=0,gs2=0;/*保存平均值2和个数*/

enter(array);

for(i=0;i<10;i++)
{
if(test(array[i])==1)
{
pjz1+=array[i];
gs1++;
}
else
{
pjz2+=array[i];
gs2++;
}
}

if(gs1!=0)
{
pjz1=pjz1/gs1;
}
if(gs2!=0)
{
pjz2=pjz2/gs2;
}

printf("满足条件的个数cnt=[%d]\n",gs1);
printf("满足条件的平均值为:[%d]\n",pjz1);
printf("不满足条件的个数为:[%d]\n",gs2);
printf("不满足条件的平均值为:[%d]\n",pjz2);

return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式