① 輸入八個數,求偶數和奇數的個數,並求偶數的平均值,奇數的平均值(c語言編程)
#include<stdio.h>
intmain()
{
inta;
intc=0;
intb=0;
doublee=0.0;
doubled=0.0;
printf("請輸入整數(輸入0表示輸入結束,數與數之間用空格隔開):");
scanf("%d",&a);
while(a!=0){
if(a%2==1)
{
++b;
d+=a;
}
else
{
++c;
e+=a;
}
scanf("%d",&a);
}
printf("奇數的個數:%d 偶數的個數:%d ",b,c);
printf("奇數平均值%lf ",d/b);//奇數的和除奇數的個數
printf("偶數平均值%lf ",e/c);//偶數的和除偶數的個數
getche();
return0;
}
② 單片機編程:8個無符號數的平均值
8無符號數存放內部RAM20H開始8單元結保存R2
程序下:
MOV
R0,
#20H
MOV
R1,
#8
MOV
R2,
#0
MOV
R3,
#0
LOOP:
MOV
A,
@R0
ADD
A,
R3
MOV
R3,
A
JNC
QQQ
INC
R2
QQQ:
DJNZ
R1,
LOOP
;
ANL
A,
#0F8H
ADD
A,
R2
RL
A
SWAP
A
MOV
R2,
A
;
SJMP
$
END
----------------------
內部RAMLIST單元開始存有組單位元組帶符號數數據長度30要求找出大數存入BIG單元
程序下:
MOV
BIG,
#0
MOV
R0,
#LIST
MOV
R2,
#30
CHA:
MOV
A,
@R0
CJNE
A,
BIG,
QQQ
QQQ:
JC
WWW
MOV
BIG,
A
WWW:
INC
R0
DJNZ
R2,
CHA
SJMP
$
END
;完
③ 單片機編程: 求8個無符號數的平均值,這8個無符號數存放在內部RAM以20H開始的8個單元中,結
;啟動入口========================
ORG 0000H ;復位啟動
AJMP START ;
;主程序==========================
START: MOV R0,#20H ;數據開始地址
MOV R2,#0 ;清零結果低位元組
MOV R3,#0 ;清零結果高位元組
MOV B,#8 ;數據個數
;
LOOP1: MOV A,@R0 ;取得一個數據
ADD A,R2 ;相加
MOV R2,A ;存回
;
MOV A,R3 ;高位和
ADDC A,#0 ;
MOV R3,A ;存回
INC R0 ;指向下一單元
DJNZ B,LOOP1 ;加完所有數據
;
MOV B,#3 ;准備除8
LOOP2: MOV A,R3 ;高位和
CLR C ;
RRC A ;CY→D7→...→D0→CY
MOV R3,A ;存回
MOV A,R2 ;低位和
RRC A ;CY→D7→...→D0→CY
MOV R2,A ;存回
DJNZ B,LOOP2 ;右移3次,平均值結果在R2中
END ;結束
④ 怎麼用c語言計算平均數
1、新建一個求數組內所有元素的平均值項目。
⑤ 用51單片機對N個數取平均值的程序
樓上的說的是,不過提醒你一點,注意變數范圍,比如說unsigned char 只有8位的最大隻有256