当前位置:首页 » 编程语言 » c语言扭曲修正
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言扭曲修正

发布时间: 2023-07-29 12:01:07

① C语言的三种循环结构为

三种循环结构:

(1) for:
for (循环控制变量初始化; 循环终止条件; 循环控制变量增量)
{
循环体
}
循环执行步骤:第一,先进行循环控制变量初始化;
第二,执行循环终止条件,如果判断结果为真,则进入第三步;如果为假则循环终止并退出;
第三,执行循环体;
第四,执行循环控制变量增量,转入第二步;
注:for循环()中的三部分除了循环终止条件外,其他两部分都可以省略,但标准的for循环中,应该把循环控制变量的初始化,增量都放在()当中,并且在循环体中绝对不应该更改循环控制变量;


(2) while:
循环控制变量初始化
while(循环终止条件)
{
循环体
循环控制变量增量
}
循环执行步骤:第一,先进行循环控制变量初始化(在while之前);
第二,判断循环终止条件,如果判断结果为真,则进入第三步;如果为假则不执行循环体;
第三,执行循环体;
第四,执行循环控制变量增量,转入第二步;

(3) do while:
循环控制变量初始化
do
{
循环体
循环控制变量增量
}while (循环终止条件);
循环执行步骤:第一,先进行循环控制变量初始化(在do while之前);
第二,执行循环体;
第三,执行循环控制变量增量;
第四,判断循环终止条件,如果判断结果为真,则返回第二步;如果为假则直接退出循环;

② 用C语言编写,两个按钮控制蜂鸣器工作。按钮1按下,蜂鸣器以500Hz的频率工作。按钮2按下,蜂鸣器停止工作

#include"reg52.h"

#defineucharunsignedchar

#defineuintunsignedint

sbitBELL=P1^0;//定义蜂鸣器

sbitkey1=P1^1;//定义按键

sbitkey2=P1^2;//定义按键

uintnum;

/*1ms廷时*/

voiddelay_ms(uintz)

{

uinti,j;

for(i=0;i<z;i++)

for(j=0;j<110;j++);

}

/*定时器初始化*/

voidinit_timer0()

{

TMOD=0x01;

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

EA=0;

ET0=1;

TR0=1;

}

voidmain()

{

BELL=0;

init_timer0();

while(1)

{

if(key1==0)

{

delay_ms(10);//延时消抖

if(key1==0) //再次判断按键是否真的被按下

{

while(key1==0);//等待释放按键

EA=1; //开启总中断

}

}

if(key2==0)

{

delay_ms(10);//延时消抖

if(key2==0) //再次判断按键是否真的被按下

{

while(key2==0); //等待释放按键

EA=0; //关闭总中断

BELL=0; //关闭蜂鸣器

}

}

}

}

voidtimer0()interrupt1

{

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;//中断计时2ms(500Hz),之所以用中断是因为定时比较准确想改延时就把里面的2000改掉,这个数除以1000得的数就是多少毫秒

num++;

if(num==1) //让蜂鸣器工以500Hz频率工作

{

num=0;

BELL=~BELL;

}

}

③ C语言 行编辑程序

/*TC2编译通过*/
/*以回车符为结束符输入一行*/
#include <stdio.h>
#define MAXSIZE 128

int main()
{
char base[MAXSIZE];
char *stack,*p;
char c;
stack=base;
while((c=getchar())!='\n')
{
if(c=='@') stack=base;
else if(c=='#'){if(stack!=base) stack--;}
else *(++stack)=c;
}
if(stack==base) printf("√");/*没有可输出的字符*/
p=base;
while(p!=stack) printf("%c",*(++p));
getch();
}