按照题目要求编写的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)//显示函数
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)