所在位置:主页 > 程序语言 > (入门级)C语言程序 看不懂,求详细讲解注释

(入门级)C语言程序 看不懂,求详细讲解注释

发布时间:2023-12-03 15:24来源:www.sf1369.com作者:宇宇

一、(入门级)C语言程序 看不懂,求详细讲解注释

#include<stdio.h>

int main()

{   chars[ ]=GFEDCBA;         //一个字符串s

    int  p=6;                   //p为6

while(s[p]!=‘D’)                //s[6]开始循环,即从A开始满足条件打印。接着是s[5]即B也满足,然后是s[4]即C也满足。然后是D不满足退出循环

{    printf(%c  , s[p]);      判迹烂//打印s[p]字符

p=p-1;     }   州返                 //p减少1,即往前面移动

return 0;

}

输出是ABC,我看掘漏不懂程序意思,求每行注释。   

还有一题:

 main()

{  int n1,n2;                   //两个整数

scanf(%d,&n2);                //输入n2

while(n2!=0)                    //当n2不为0

{  n1=n2%10;                    //n1为n2的个位数字

n2=n2/10;                       //n2/10消除掉个位

printf(%d   ,n1);   }     }   //打印n1即n2的个位数字

                                //整个程序的含义就是将数字123打印成  3 2 1

#include<stdio.h>

int main() {

char s[] = GFEDCBA; // 字符数组共有7个字符,索引位置是0 -- 6

int p = 6; // 此时s[p]是'A'

while(s[p] != 'D') { // 从激握雹'A'开始往前读字符,遇到'皮正D'后结束循环

printf(%c ,s[p]); // 不是'D'就明帆打印

p = p - 1; // 往前移动索引

}

return 0;

}

#include<stdio.h>

int main() {

int n1,n2;

scanf(%d,&n2); // 读入一个整数

while(n2 != 0) { // n2非0是继续循环

n1 = n2 % 10; // 得到n2的末位

n2 = n2/10;   // 去除n2的末位

printf(%d ,n1); // 显示n2 的末位

}

return 0;

}

// 该段代码用来倒序显示一个整数

#include<stdio.h>

int main()

{   chars[ ]=GFEDCBA;

    int  p=6;  肆祥  /*从字符的第7个位置逆序查找*/

while(s[p]!=‘D’) /*查找字符为D的裂敬搏*/

{    

printf(%c  , s[p]); /*输出当前字符*/

p=p-1;     }          /*下标减一*/    

return 0;

}

 

/*此代码的功能就是取输入的一个数的最高位*/

main()

{  int n1,n2;

scanf(%d,&n2);    /*输入n2*/

while(n2!=0)    /*n2 不为0 的时候循环*/

{  n1=n2%10;    /*n1 取 n2 的个位数*/

n2=n2/10;        /*n2 减小10倍,其实就是十进制右移一位稿毁*/

printf(%d   ,n1);   /*输出n1*/}     

}

二、C语言程序解读

p1,p2分别是链表的头指针和尾指针,刚进入时判断头指针是否为空,空就输出空记录。不是空继续进行闭梁查找,查找就是遍历链表,找到液态和对应的节点进行信息的修闹盯改。

三、单片机c语言程序解读,,求解释。。

include <reg52.h>

#include <intrins.h>

是头文件

#define uchar unsigned char

#define uint unsigned int

是宏定义

uchar code DSY_CODE[]=

{

0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf

};

这袜搭是数码管的显示不同数的代码

uchar code Table_OF_Digits[][8]=

{

{0,9,10,1,2,10,2,5},

{2,1,10,5,7,10,3,9},

};

要显示的数

void DSY_Show() interrupt 1

{

TH0 = (8191-4000)/32;

TL0 = (8191-4000)%32;

P3 = _crol_(P3,1);

P0 = DSY_CODE[Table_OF_Digits[i][j]];

j = (j+1)%8;

if(++t!=350) return;

t = 0;

i = (i+1)%2;

}

设定动态扫描间隔时间和要显示 的数

其中

TH0 = (8191-4000)/樱游32;

TL0 = (8191-4000)%32; 是设定动态扫描间隔时间

P3 = _crol_(P3,1);

P0 = DSY_CODE[Table_OF_Digits[i][j]];

j = (j+1)%8;

if(++t!=350) return;

t = 0;

i = (i+1)%2;

是要动态显示的数及选通控制

void main()

{

P3 = 0x80;

TMOD = 0x00;

TH0 = (8191-4000)/32;

TL0 = (8191-4000)%32;

IE = 0x82;

TR0 = 1;

while(1);

}

其中

TMOD = 0x00;

TH0 = (8191-4000)/脊好销32;

TL0 = (8191-4000)%32;

IE = 0x82;

TR0 = 1;

是确定定时器的工作模式及初始化定时器

#includereg52.h是什么意思就是指把reg52.h这个文件包含进来禅搏信

这个头银槐文件主要是包含了有关52单片机的几条汇编贺轮语句的C语言调用接口,是直接编译成对应的汇编语句的。比如_nop_()函数就代表汇编语言中的NOP,在C语言编程时编写精确的短延时时使用_nop_()函数。

数码管滚动显示数字。