如何用C语言编写这个计数程序?

如何用C语言编写这个计数程序?,第1张

按照题目要求编写的C语言计数程序如下

#include<stdio.h>

int main(){

int i,start,end,step

printf("从哪个数字开始计数:")

scanf("%d",&start)

printf("在哪个数字停止计数:")

scanf("%d",&end)

printf("每次增加的数字:")

scanf("%d",&step)

for(i=starti<=endi=i+step){

printf("%d\n",i)

}

return 0

}

#include <iostream>

#include <string>

#include <fstream>

using namespace std

int main()

{

string file_name("D:/DL.txt") //文件路径,可以自己修改

ifstream in_file(file_name.c_str()) //打读的方式打开一个文件

if (!in_file) //打开失败,则不存在

{

ofstream file(file_name.c_str()) //创建一个新文件

file << 1  //写入1

}

else

{

int num

in_file >> num //读取一个数

ofstream out_file(file_name.c_str())

out_file << num + 1 //写入+1后的值

}

return 0

}

#include<reg52.h>//52系列单片机头文件

#define uchar unsigned char

#define uint unsigned int

void delayms(unsigned char ms);//延时函数

sbit key1= P3^5

sbit key2= P3^6

sbit dula=P2^6//申明U1锁存器的锁存端

sbit wela=P2^7//申明U2锁存器的锁存端

uchar code table[ ] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c}

uchar num,num1

/*数据显示函数*/

void display(uchar num,num1)//显示子函数

{

uchar ge,shi,bai,qian//分离4个分别要显示的数

ge=num%10

shi=num/10

bai=num1%10

qian=num1/10

dula=1

P0=table[ge]//送个位段选数据

dula=0

P0=0xff //送位选数据前关闭所有显示,防止打开位选锁存时

//原来段选数据通过位选锁存器造成混乱

wela=1

P0=0xdf //送位选数据

wela=0

delayms(2)//延迟消影

dula=1

P0=table[shi] //送十位段选数据

dula=0

P0=0xff

wela=1

P0=0xef

wela=0

delayms(2)

dula=1

P0=table[bai] //送百位段选数据

dula=0

P0=0xff

wela=1

P0=0xf7

wela=0

delayms(2)

dula=1

P0=table[qian] //送千位段选数据

dula=0

P0=0xff

wela=1

P0=0xfb

wela=0

delayms(2)

}

/*延时函数*/

void delayms(unsigned char ms){

unsigned char i

while(ms--)

{

for(i =0i<120i++)

}

}

/*初始化函数*/

void init()

{

num=99

num1=99

}

/*按键扫描及处理函数,如果有按键按键,则key1=0或key2=0, 则释放后进行按键处理, 根据按键码执行相应的功能增加、减少时,增加、减少分*/

void keyscan()

{

if(key1==0)

{

delayms(10)

if(key1==0)

{

while(!key1)

num++

if(num>99) //当计完99后归0

{

num=0

num1++ //个位跟十位同时清0后百位自加1

if(num1>99)

num1=0

}

}

}

if(key2==0)

{

delayms(10)

if(key2==0)

while(!key2)

{ num--

if(num==-1)

{

num=99

num1--

if(num1==-1)

num1=99

}

}

}

}

/*主函数*/

void main(void)

{ init()

while(1)

{

keyscan()//按键函数

display(num,num1)//显示函数

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11536202.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存