成都创新互联网站制作重庆分公司

c语言go_on C语言编译器

使用C语言编程:从键盘输入一个5的正整数,判断它是不是回文数。

#include stdio.h

成都创新互联主营宝兴网站建设的网络公司,主营网站建设方案,成都app软件开发公司,宝兴h5微信平台小程序开发搭建,宝兴网站营销推广欢迎宝兴等地区企业咨询

#include stdlib.h

#include string.h

void check(int* Hui)//这个函数用来检测是否是5位数

{

int i;

int count=0;//计数变量

char lenth[10];

for(i=0;istrlen(itoa(*Hui,lenth,10));i++){

count++;

}//这里for循环可以换成count=strlen(itoa(*Hui,lenth,10))

printf("这是%d位数",count);

if(count==5){

puts("go on..");

}

else{

puts("your input is error!");

exit(0);

}

}

int main()

{

int* Huiwenshu=NULL; //也可以用int Huiwenshu[6];,推荐前一种

int Last_digit;//末位数字

int First_digit;//首位数字

int Thou_digit;//千位数字

int Ten_digit;//十位数字

Huiwenshu=(int*)malloc(sizeof(int*));//申请int*大小的连续空间

puts("请输入一个5位数:");

scanf("%d",*Huiwenshu);//获取5位数

check(Huiwenshu);//将5位数导入检查函数

/*将5位数分解,涉及"%"取余数的技巧*/

Last_digit=*Huiwenshu%10;//取末位

Ten_digit=((*Huiwenshu%100-(Last_digit))/10);//取十位

Thou_digit=((*Huiwenshu%10000-(*Huiwenshu%1000))/1000);//取千位

First_digit=((*Huiwenshu%100000-(*Huiwenshu%10000))/10000);//取首位

if(Last_digit==First_digit){ //判断回文数

if(Ten_digit==Thou_digit){

printf("%d是回文数!",*Huiwenshu);

}

else{

printf("%d不是回文数!",*Huiwenshu);

return 0;

}

}

else{

}

free(Huiwenshu);//释放内存

return 0;

}

代码里的注释很清晰,如果不懂再问噢。其实还有另一种方法,就是直接定义一个int型数组,然后通过取对应的位数进行比较,然后得出结果,不过这种方法通用性较低,但是也行。

单片机中goon是什么意思

这是C语言中的指令。

是无条件跳转到指定的标号位置开始执行程序。

这个指令用起来要慎重,它容易让你的程序变得可读性比较差,日后维护和调试都不方便。

但是有时用一下会显得十分方便。

曾经有建议可以使用大量的这样的语句来对程序惊醒反编译的加密。

请教C语言高手!!!

ifstream infile("1.txt");

while(1)

if(infile.get()=='\n')/跳过第一行

break;

while(1)

{

//go on

}

C语言中 goto语句有什么作用?

/*goto 可以调到指定位置处执行新的程序,经常用来从多重循环内跳出来。

如下程序所示:

*/

#includestdio.h

#includestdlib.h

#includememory.h

int main()

{

int i,j;

int a[3][3]={1,2,3,4,5,6,7,8,9};

for(i=0;i3;i++){

for(j=0;j3;j++){

if(a[i][j] == 6)

{

goto Find;

}

}

}

Find:

printf("%d %d\n",i,j);

getchar();

return 0;

}

欢迎采纳,如有不明白的,可以追问^_^

^_^

^_^

单片机设计的四人抢答器

如果有电路原理图就更好分析了。。。

org 0000h

ajmp main ; ;上电自动转向主程序

org 0003h ;【外部中断0入口 】

ajmp start ; ;转向start 子程序

org 000bh ;【定时器T0中断入口】

ajmp time ; 转向time子程序

org 0030h ; ;主程序首地址

main: mov tmod,#1; 0000 0001 置T/C 1为【方式0】,计数 ;【置T/C 0为方式1,定时】

mov th0,#0b1h; ;送T/C 0定时初值

mov tl0,#0e0h

mov ie, #83h ; ;设置中断

setb tr0 ;【启动T0】

mov r3,#0

mov r4,#0

mov 30h,#0; ;显示秒表的个位LED数码管清零

mov 31h,#0; ;显示秒表的十位LED数码管清零

mov 32h,#0; ;显示选手号的LED数码管清零

disp: mov sp,5fh

mov a,#03h ; 0000 0011 ;对8155初始化,A口、B口输出,C口输入

mov dptr,#0ff20h ;【控制口的地址】

movx @dptr,a ;【写8155控制字】

loop: mov r5,#1 ; ;置字位码初值

mov r0,#30h ; ;置显示缓冲区指针初值

mov a,r5

loop1: mov dptr,#0ff21h ; ;字位码送8155 A口

movx @dptr,a ;把a的值送到A口

mov dptr,#0ff22h ;8155 B口

mov a,@r0

add a,#0eh ;【a=0FH 0eH=14=1+2+1+1+3+1+1+2+2 (跳过14个字节)】

movc a,@a+pc ; ;查字位码表

movx @dptr,a ; ;字形码送8155 B口 【(本指令占1个字节)】

acall dlay ; ;延时1MS 【(本指令占2个字节)】

inc r0 ; 【(本指令占1个字节)】

mov a,r5 ; 【(本指令占1个字节)】

jb acc.2,ld ; 【(本指令占3个字节)】

rl a ; 【(本指令占1个字节)】

mov r5,a ; 【(本指令占1个字节)】

ajmp loop1 ; 【(本指令占2个字节)】

ld: sjmp loop ; ;周而复始 ; 【(本指令占2个字节)】

table:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,0c8h ; 共阳 字形码表

;【 0 1 2 3 4 5 6 7 8 9 0】

dlay: mov r7,#02h ; ;延时子程序,【大约延时2*255+2*2+2*2us=518us】

dl1: mov r6,#0ffh

dl2: djnz r6,dl2

djnz r7,dl1

ret ; ;【子程序返回】而非【中断返回】,两者不一样

time: mov th0,#0b1h ; ;重新装入计数初值

mov tl0,#0e0h

push psw ; ;保护现场

push acc

mov a,#0fh

orl p1,a ;【p1口低四位输出高电平】

mov a,p1 ;【读P1口】

anl a,#0fh ;【屏蔽高四位】

cjne a,#0,go_on ;【A低四位不为零就转移到go_on】

inc r3 ;

cjne r3,#25,back ;【r3不等于25就转移到back,即直接返回】

mov r3,#0 ;【如果r3等于25了,就把r3的值清零】

inc r4

mov a,r4

mov b,#10

div ab ;【r4除以10,以分离出个位和十位。个位(余数)放在b,十位(商)放在a】

mov 31h,a

mov 30h,b

cjne r4,#20,back ; 判断是否到20秒

cpl p1.7 ; ;到20秒红灯亮警告

mov 32h,#10

clr tr0 ; ;停止T/C 0计时

sjmp back

go_on: clr tr0

jnb acc.0,two ; ;判断是不是一号选手按键,若不是,转向二号

mov 32h,#01h ; ;LED显示1

sjmp back

two: jnb acc.1,three ; ;判断是不是二号选手按键,若不是,转向三号

mov 32h,#02h; ;LED显示2

sjmp back

three: jnb acc.2,four ; ;判断是不是三号选手按键,若不是,转向四号

mov 32h,#03h ; ;LED显示3

sjmp back

four: mov 32h,#04h ; ;LED显示4

back: pop acc

pop psw

reti ; ;中断返回

start: setb tr0

reti ; ;中断返回

end


网站栏目:c语言go_on C语言编译器
URL链接:http://cxhlcq.com/article/hihjjc.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部