1. 用switch函數編寫c語言簡單計算器,可以循環運算
//滿足要求;如果覺得不好看,想單獨做主菜單,你自己可以稍微改改
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inta,b,sum;
charc;
while(true)
{
printf("輸入格式:數字運算符數字:1+2 ");
scanf("%d%c%d",&a,&c,&b);
switch(c)
{
case'+':
sum=a+b;
printf("=%d ",sum);
break;
case'-':
sum=a-b;
printf("=%d ",sum);break;
case'*':
sum=a*b;
printf("=%d ",sum);break;
case'/':
sum=a/b;
printf("=%d ",sum);break;
case'%':
sum=a%b;
printf("=%d ",sum);break;
}
printf("清屏並返回主菜單! ");
system("pause");
system("cls");//清屏
}
return0;
}
2. c語言計數器
#include <stdlib.h>
#include <math.h>
#include <graphics.h>
#include <stdio.h>
#include <process.h>
#define EXCAPE 27
#define ENTER 13
main(){
int press,i,x,y,x1,y1,ch_z=0;
int dian=0;
char ch='0'; /*input + - * / */
char emp[80],sum[80],*e,*s;
double yuan=0.000000000000;
void init(void);
void clear_z(char *u);
double strtoflt(char *p);
int getkey();
int gd=DETECT, gm;
initgraph(&gd, &gm, "");
e=emp;
s=sum;
init();
x = (getmaxx() / 2) - 120;
y = (getmaxy() / 2) - 150;
x1 = (getmaxx() / 2) + 120;
y1 = (getmaxy() / 2) + 150;
while(1){
press = getkey();
switch(press){
case EXCAPE:
exit(0);
case 47:
bar (x + 10, y + 80 + 10, x + 60 - 10, y + 80 + 60 - 10);
delay(8000);
init();
if (ch!='0'){
switch(ch){
case '/':
if (strtoflt(emp)==0.0){
ch='0';
ch_z=0;
dian=0;
emp[0]='\0';
sum[0]='\0';
e=emp;
s=sum;
outtextxy(x+30,y+40,"error!!!!!");
break;
}
yuan = strtoflt(sum) / strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
break;
case '*':
yuan = strtoflt(sum) * strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
break;
case '+':
yuan = strtoflt(sum) + strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
break;
case '-':
if (strtoflt(sum)>=strtoflt(emp)){
yuan = strtoflt(sum) - strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
}
else{
yuan=strtoflt(emp)-strtoflt(sum);
sprintf(sum,"-%0.10f",yuan);
}
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
}
}
else{
if (ch_z==0){
outtextxy(x+30,y+40,emp);
stpcpy(sum,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
}
ch='/';
ch_z=0;
emp[0]='\0';
e=emp;
dian=0;
break;
case 42:
bar (x + 60 + 10, y + 80 + 10, x + 60 * 2 - 10, y + 80 + 60 - 10);
delay(8000);
init();
if (ch!='0'){
switch(ch){
case '/':
yuan = strtoflt(sum) / strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '*':
yuan = strtoflt(sum) * strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '+':
yuan = strtoflt(sum) + strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '-':
if (strtoflt(sum)>=strtoflt(emp)){
yuan = strtoflt(sum) - strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
}
else{
yuan=strtoflt(emp)-strtoflt(sum);
sprintf(sum,"-%0.10f",yuan);
}
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
}
}
else{
if (ch_z==0){
outtextxy(x+30,y+40,emp);
stpcpy(sum,emp);
e=emp;
}
else
outtextxy(x+30,y+40,sum);
}
ch='*';
ch_z=0;
dian=0;
break;
case 45:
bar (x + 60 * 2 + 10, y + 80 + 10, x + 60 * 3 - 10, y + 80 + 60 - 10);
delay(8000);
init();
if (ch!='0'){
switch(ch){
case '/':
yuan = strtoflt(sum) / strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '*':
yuan = strtoflt(sum) * strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '+':
yuan = strtoflt(sum) + strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '-':
if (strtoflt(sum)>=strtoflt(emp)){
yuan = strtoflt(sum) - strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
}
else{
yuan=strtoflt(emp)-strtoflt(sum);
sprintf(sum,"-%0.10f",yuan);
}
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
}
}
else{
if (ch_z==0){
outtextxy(x+30,y+40,emp);
stpcpy(sum,emp);
e=emp;
}
else
outtextxy(x+30,y+40,sum);
}
ch='-';
ch_z=0;
dian=0;
break;
case 43:
bar (x + 60 * 3 + 10, y + 80 + 10, x + 60 * 4 - 10, y + 80 + 60 - 10);
delay(8000);
init();
if (ch!='0'){
switch(ch){
case '/':
yuan = strtoflt(sum) / strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '*':
yuan = strtoflt(sum) * strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '+':
yuan = strtoflt(sum) + strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '-':
if (strtoflt(sum)>=strtoflt(emp)){
yuan = strtoflt(sum) - strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
}
else{
yuan=strtoflt(emp)-strtoflt(sum);
sprintf(sum,"-%0.10f",yuan);
}
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
}
}
else{
if (ch_z==0){
outtextxy(x+30,y+40,emp);
stpcpy(sum,emp);
e=emp;
}
else
outtextxy(x+30,y+40,sum);
}
ch='+';
ch_z=0;
dian=0;
break;
case 49:
bar (x + 10, y + 80 + 53 + 10, x + 60 - 10, y + 80 + 53 * 2 - 4);
delay(8000);
init();
for (i=0;i<=79;i++){
if (emp[i]=='\0')
break;
}
if (ch_z==0){
*e='1';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 50:
bar (x + 60 + 10, y + 80 + 53 + 10, x + 60 * 2 - 10, y + 80 + 53 * 2 - 4);
delay(8000);
init();
for (i=0;i<=79;i++){
if (emp[i]=='\0')
break;
}
if (ch_z==0){
*e='2';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 51:
bar (x + 60 * 2 + 10, y + 80 + 53 + 10, x + 60 * 3 - 10, y + 80 + 53 * 2 - 4);
delay(8000);
init();
for (i=0;i<=79;i++){
if (emp[i]=='\0')
break;
}
if (ch_z==0){
*e='3';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case ENTER:
bar (x + 60 * 3 + 10, y + 80 + 53 + 10, x + 60 * 4 - 10, y + 80 + 53 * 2 - 4);
delay(8000);
init();
if (ch!='0'){
switch(ch){
case '/':
yuan = strtoflt(sum) / strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '*':
yuan = strtoflt(sum) * strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '+':
yuan = strtoflt(sum) + strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
case '-':
if (strtoflt(sum)>=strtoflt(emp)){
yuan = strtoflt(sum) - strtoflt(emp);
sprintf(sum,"%0.10f",yuan);
}
else{
yuan=strtoflt(emp)-strtoflt(sum);
sprintf(sum,"-%0.10f",yuan);
}
clear_z(sum);
outtextxy(x+30,y+40,sum);
emp[0]='\0';
e=emp;
break;
}
}
else{
if (ch_z==0){
outtextxy(x+30,y+40,emp);
stpcpy(sum,emp);
e=emp;
}
else{
outtextxy(x+30,y+40,sum);
}
}
ch='0';
ch_z=1;
dian=0;
break;
case 52:
bar (x + 10, y + 80 + 53 * 2 + 10, x + 60 - 10, y + 80 + 53 * 3 - 4);
delay(8000);
init();
if (ch_z==0){
*e='4';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 53:
bar (x + 60 + 10, y + 80 + 53 * 2 + 10, x + 60 * 2 - 10, y + 80 + 53 * 3 - 4);
delay(8000);
init();
if (ch_z==0){
*e='5';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 54:
bar (x + 60 * 2 +10, y + 80 + 53 * 2 + 10, x + 60 * 3 - 10, y + 80 + 53 * 3 - 4);
delay(8000);
init();
if (ch_z==0){
*e='6';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 46:
bar (x + 60 * 3 + 10, y + 80 + 53 * 2 + 10, x + 60 * 4 - 10, y + 80 + 53 * 3 - 4);
delay(8000);
init();
if (dian==0){
if (ch_z==0){
*e='.';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
}
else{
if (ch_z==0)
outtextxy(x+30,y+40,emp);
else
outtextxy(x+30,y+40,sum);
}
dian=1;
break;
case 55:
bar (x + 10, y + 80 + 53 * 3 + 10, x + 60 - 10, y + 80 + 53 * 4 - 4);
delay(8000);
init();
if (ch_z==0){
*e='7';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 56:
bar (x + 60 + 10, y + 80 + 53 * 3 + 10, x + 60 * 2 -10, y + 80 + 53 * 4 - 4);
delay(8000);
init();
if (ch_z==0){
*e='8';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 57:
bar (x + 60 * 2 + 10, y + 80 + 53 * 3 + 10, x + 60 * 3 - 10, y + 80 + 53 * 4 - 4);
delay(8000);
init();
if (ch_z==0){
*e='9';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 48:
bar (x + 60 * 3 + 10, y + 80 + 53 * 3 + 10, x + 60 * 4 - 10, y + 80 + 53 * 4 - 4);
delay(8000);
init();
if (ch_z==0){
*e='0';e++;*e='\0';
outtextxy(x+30,y+40,emp);
}
else{
outtextxy(x+30,y+40,sum);
}
break;
case 32:
emp[0]='\0';
sum[0]='\0';
e=emp;
s=sum;
ch='0';
ch_z=0;
dian=0;
init();
break;
case 8:
delay(8000);
for(i=0;i<=79;i++){
if (emp[i]=='\0')
break;
}
if (i==0)
break;
if (i!=79&&i!=0){
i--;
emp[i]='\0';
e=&emp[i];
}
init();
outtextxy(x+30,y+40,emp);
break;
}
}
}
/*---------------------------------------------------------------------*/
void init(void){
int x, y, x1, y1, i, j;
char emp;
x = (getmaxx() / 2) - 120;
y = (getmaxy() / 2) - 150;
x1 = (getmaxx() / 2) + 120;
y1 = (getmaxy() / 2) + 150;
cleardevice();
setbkcolor(3);
setfillstyle(1, 15);
setcolor(15);
settextstyle(1,0,1);
rectangle (x, y, x1, y1);
rectangle (x - 7, y - 7, x1 + 7, y1 + 7);
rectangle (x + 10, y + 10, x1 - 10, y + 80 - 10);
line (x, y + 80, x1, y + 80);
y = y + 80;
for (j = 1; j <= 4; j++){
x = (getmaxx() / 2) - 120;
for (i = 1; i <= 4; i++){
/* bar (x + 10, y + 10, x + 60 - 10, y + 60 - 10);*/
rectangle(x + 10, y + 10, x + 60 - 10, y + 60 - 10);
if (j == 1){
if (i == 1)
outtextxy(x + 20, y + 20, "/");
if (i == 2)
outtextxy(x + 25, y + 20, "*");
if (i == 3)
outtextxy(x + 27, y + 20, "-");
if (i == 4)
outtextxy(x + 25, y + 20, "+");
}
if (j == 2){
if (i == 1)
outtextxy(x + 25, y + 20, "1");
if (i == 2)
outtextxy(x + 25, y + 20, "2");
if (i == 3)
outtextxy(x + 25, y + 20, "3");
if (i == 4)
outtextxy(x + 25, y + 20, "=");
}
if (j == 3){
if (i == 1)
outtextxy(x + 25, y + 20, "4");
if (i == 2)
outtextxy(x + 25, y + 20, "5");
if (i == 3)
outtextxy(x + 25, y + 20, "6");
if (i == 4)
outtextxy(x + 25, y + 20, ".");
}
if (j == 4){
if (i == 1)
outtextxy(x + 25, y + 20, "7");
if (i == 2)
outtextxy(x + 25, y + 20, "8");
if (i == 3)
outtextxy(x + 25, y + 20, "9");
if (i == 4)
outtextxy(x + 25, y + 20, "0");
}
x = x + 60;
}
y = y + 53;
}
}
/*---------------------------------------------------------------------*/
int getkey(){
char lowbyte;
int press;
while(bioskey(1)==0);
press = bioskey(0);
press = press&0xff? press&0xff: press>>8;
return(press);
}
double strtoflt(char *p)
{
double rtl=0.000000000000;
double pnt=0.000000000000;
double t = 10;
int ispoint = 0;
while (*p!='\0'||*p!='.'){
if(*p<'0'||*p>'9')
break;
rtl*=10;
rtl+=*p-'0';
p++;
}
if (*p=='.'){
ispoint=1;
p++;
}
while(ispoint&&*p!='\0'){
pnt+=(double)(*p-'0')/t;
t*=10;
p++;
}
rtl+=pnt;
return (rtl);
}
/*-----------------------------------------------------------------------*/
void clear_z(char u[]){
int i;
for(i=strlen(u)-1;i>=0;i--){
if (u[i]!='0')
break;
}
if (u[i]=='.'){
u[i]='\0';
}
else{
i++;
u[i]='\0';
}
}
3. 51單片機c語言設計一個十進制計數器,計數值在 0~9 之間循環,帶有進位輸出信號;每按下一次按
摘要 親很高興為您解答1) 上電時,數碼管顯示為00。
4. 用C語言,輸入一行數字字元,請用數組元素作為計數器來統計每個數字字元的個數。用下標為0的元素統計字
1、打開visual C++ 6.0-文件-新建-文件-C++ Source File。
5. C語言中的計數器怎麼用啊給舉個例子
就是設置一個全局變數count,然後每進行一次循環就加一次
6. 51C語言的計數器怎麼設置的,最好有解釋,
void dis_cnter(void) 顯示計數器值子程序開始
{uchar i; 定義字元型局部變數i
P3_7=1;P3_6=1; 消隱有效,允許顯示
for(i=0;i8;i++) 循環8次
根據8個單元的計數值查表發送顯示
P3_7=0; 關閉消隱,正常顯示
} 顯示計數器值子程序結束
void cnter(void) 計數轉換子程序開始
{uchar i; 定義字元型局部變數i
for(i=0;i7;i++) 循環8次
}若計數器某位值大於9,則該位回0,
而高位被進位加1
------------------------------------
if(cnt[7]9) 若計數器最高位值大於9,則計數器全清0
} 計數轉換子程序結束
void pt_cnt(void) 輸出控制子程序開始
{
if((cnt[0]==pre_cnt[0])&&(cnt[1]==pre_cnt[1])&&
(cnt[2]==pre_cnt[2])&&(cnt[3]==pre_cnt[3])&&
(cnt[4]==pre_cnt[4])&&(cnt[5]==pre_cnt[5])&&
(cnt[6]==pre_cnt[6])&&(cnt[7]==pre_cnt[7])) 若計數值等於預置值
out_flag=1; 輸出標志置1
else out_flag=0; 否則輸出標志置0
=================================================
if(out_flag)drv=0; 若輸出標志為1,輸出端(P3.4)置0,驅動光耦U2
else drv=1; 否則輸出端(P3.4)置1
} 輸出控制子程序結束
void main(void) 主程序開始
{ IE=0x84; 開放CPU中斷,開放外中斷1的中斷
IT1=1; 置外中斷1為邊沿觸發
while(1) 無限循環
{P3_6=0;P3_7=1; 禁止發送給顯示器,消隱有效
SBUF=0x00;while(!TI);TI=0; 向IC2發送0x00,使IC2輸出為全0
if((P3&0x24)!=0x24)keydown_flag=1; 檢測P3.2、P3.5是否為高電平。
若不為高電平,說明有鍵按下,鍵被按下標志置1
else keydown_flag=0; 否則,鍵被按下標志置0
-------------------------------------------------------------------------------
SBUF=0xfe;while(!TI);TI=0; 向IC2發送0xfe
if(!P3_2)set_flag=!set_flag; 若P3.2為0,說明S9鍵按下,標志set_flag取反
==================================================
if(!set_flag)
若標志set_flag為0,調用計數、顯示計數、輸出控制的子程序
else
否則標志set_flag為1,調用掃描S1~S8鍵、顯示預置值的子程序
=====================================================
if(keydown_flag)delay(300); 因有鍵按下,調用延時300mS子程序,
以免調整鍵值的速度過快
}
} 主程序結束
void extern_int1(void) interrupt 2 using 1 外中斷1服務子程序
{
cnt[0]++; 計數器的最低位加1
}
7. 以51單片機為基體 用C語言設計一個計數器 要求顯示數據8位 有復位功能 時間間隔1秒 動態顯示
void dis_cnter(void) 顯示計數器值子程序開始
{uchar i; 定義字元型局部變數i
P3_7=1;P3_6=1; 消隱有效,允許顯示
for(i=0;i8;i++) 循環8次
{SBUF=SEG7[cnt];while(!TI);TI=0;} 根據8個單元的計數值查表發送顯示
P3_7=0; 關閉消隱,正常顯示
} 顯示計數器值子程序結束
void cnter(void) 計數轉換子程序開始
{uchar i; 定義字元型局部變數i
for(i=0;i7;i++) 循環8次
{if(cnt9){cnt=0;cnt[i+1]++;}}若計數器某位值大於9,則該位回0,
而高位被進位加1
------------------------------------
if(cnt[7]9){for(i=0;i8;i++)cnt=0;} 若計數器最高位值大於9,則計數器全清0
} 計數轉換子程序結束
void pt_cnt(void) 輸出控制子程序開始
{
if((cnt[0]==pre_cnt[0])&&(cnt[1]==pre_cnt[1])&&
(cnt[2]==pre_cnt[2])&&(cnt[3]==pre_cnt[3])&&
(cnt[4]==pre_cnt[4])&&(cnt[5]==pre_cnt[5])&&
(cnt[6]==pre_cnt[6])&&(cnt[7]==pre_cnt[7])) 若計數值等於預置值
out_flag=1; 輸出標志置1
else out_flag=0; 否則輸出標志置0
=================================================
if(out_flag)drv=0; 若輸出標志為1,輸出端(P3.4)置0,驅動光耦U2
else drv=1; 否則輸出端(P3.4)置1
} 輸出控制子程序結束
void main(void) 主程序開始
{ IE=0x84; 開放CPU中斷,開放外中斷1的中斷
IT1=1; 置外中斷1為邊沿觸發
while(1) 無限循環
{P3_6=0;P3_7=1; 禁止發送給顯示器,消隱有效
SBUF=0x00;while(!TI);TI=0; 向IC2發送0x00,使IC2輸出為全0
if((P3&0x24)!=0x24)keydown_flag=1; 檢測P3.2、P3.5是否為高電平。
若不為高電平,說明有鍵按下,鍵被按下標志置1
else keydown_flag=0; 否則,鍵被按下標志置0
-------------------------------------------------------------------------------
SBUF=0xfe;while(!TI);TI=0; 向IC2發送0xfe
if(!P3_2)set_flag=!set_flag; 若P3.2為0,說明S9鍵按下,標志set_flag取反
==================================================
if(!set_flag){cnter();dis_cnter();pt_cnt();delay(100);}
若標志set_flag為0,調用計數、顯示計數、輸出控制的子程序
else {scan_key();dis_pre_cnter();delay(10);}
否則標志set_flag為1,調用掃描S1~S8鍵、顯示預置值的子程序
=====================================================
if(keydown_flag)delay(300); 因有鍵按下,調用延時300mS子程序,
以免調整鍵值的速度過快
}
} 主程序結束
void extern_int1(void) interrupt 2 using 1 外中斷1服務子程序
{
cnt[0]++; 計數器的最低位加1
}
8. 求c語言編一個帶計時功能的計數器
用clock()函數就可以了
#include<stdio.h>
#include<time.h>
#include<conio.h>
intmain()
{
clock_tt[3];
inti=0;
charch;
while(1)
{
ch=getch();
if(ch=='d'||ch=='D')//指定鍵位為d
{
t[i++]=clock();
if(i>=3)
{
printf("%dms ",t[2]-t[0]);
i=0;
}
}
if(ch=='0')break;//退出
}
return0;
}
9. 用C語言寫兩個計數器的小程序。
很多人回家過年了,所以回答少,程序已通過
#include<stdio.h>
/*第一個程序:*/
main()
{
int i=1, m=0;
printf("請輸入一個數:\n");
while(i!=0){ //while 循環開始當i等於0時,程序中止;
scanf("%d",&i); //從鍵盤獲取數值,如果i=0,則退出並輸出m的值
//printf("\n");
if (i==1) m++; //如果i=1,則m+1;
}
printf("輸入 '1' 的次數:%d\n",m);
}
//第二個程序 在第一個基礎上稍修改即可
main()
{
int i=1, n,m=0;
printf("請輸入N:\n");
scanf("%d",&n);
printf("請輸入一個數:\n");
while(i!=0){
scanf("%d",&i); //從鍵盤獲取數值,如果i=0,則退出並輸出m的值
if (i>n) m++; //如果i>n,則m+1;
}
printf("大於N次數:%d\n",m);
}
10. 單片機C語言關於定時計數器程序運行時序問題
這個和你設置的定時器的工作模式有關系,你要在定時時間到後,依然想要TH0=0xfc; TL0=0x18。這兩個寄存器值存在的話,你就要設置定時器的工作模式為:自動重裝初值