c语言解释 要挨句解释

作者&投稿:澹闵 (若有异议请与网页底部的电邮联系)
C语言程序语句解释~

#include #include是固定格式,意思是”包含“,中的stdio.h,这是一个库函数头,用括起来,这句意思是把名为stdio.h的头(其实是一个文件)包含到当前的程序中。在C语言中,有许多函数可以直接拿来用,比如printf函数(输出函数),这些函数被称为库函数,要想调用这些函数,就要给出相应的库函数头,不同的库函数需要给出不同的头,库函数头的含义是”将这些函数的定义包含到程序中去“,因为你的程序中没有这些库函数的定义,所以你想要调用某些库函数,就要给出相应的头,将函数的定义包含到程序中是有编译器完成的

#define CUBE(x) (x*x*x) 这是C语言中的宏定义,宏分为简单的宏和带参数的宏,宏有什么作用?宏的一般格式是”#define 记号 替换列表“其中# define是“定义”的意思,也算是固定格式吧,记号可以是字母,符号等一切可能出现的东西,比如说#define CUBE(x) (x*x*x) 中的CUBE,一般用大写字母(C语言程序员数十年遵循的规范,希望你不要打破哦);"替换列表“可以是表达式,语句等等(比如#define CUBE(x) (x*x*x) 中的(x*x*x),表示计算X的立方)。宏的作用是将程序中出现的所有记号用替换列表代替。比如说#define CUBE(x) (x*x*x)中,只要程序中出现CUBE(x) ,编译器(这个工作是有编译器完成的)就把CUBE(x) 替换为(x*x*x)。简单的宏比如#define N 10,在程序中凡是有N的地方都将被替换为10.带参数的宏比如说你的程序中的宏#define CUBE(x) (x*x*x),CUBE是记号,括号中的x是参数,就像一个函数,在程序中用的时候,比如出现i=CUBE(10);那么就将被替换为i=(10*10*10); i的值将被赋予10的立方。

main() 是C语言中的主函数,C语言是由函数组成的,其中主函数(或称main函数)是必须有的,程序执行的时候是由主函数开始执行的,主函数内容要用{}括起来

int n=5; 定义变量n并赋与n值为5. int表示变量n的类型是整型,n=5是将n的值初始化为5(以后换可以改变),后面的分号是必须有的,C语言规定每条语句后都应该以分号结尾。

int s=CUBE(++n); 定义s为整型并赋予s的值为CUBE(++n),CUBE(++n)前面已经说过了,它将被替换为(++n*++n*++n),其中++n是一种算数运算符,就像乘除加减法一样,++n的意义是将n自增1,整个表达式(即++n)不变,这里要分清变量和表达式,比如a+b,变量是a和b,表达式是a+b,。所以这里s就等于125.

printf(“%d”,s); 这是一个输出函数,%d表示S的类型为整形,输出s的值。

这个程序就是在3个数中找最大的那个数字
strcmp(x,y)的作用就是用判断x-y的结果,也就是比大小,
if(strcmp(str[0],str[1])>0)
strcpy(string,str[0]);的意思就是如果str[0]大于str[1],就把str[0]的值给string
非则就把str[1]的值给string这样这两个数之间的较大数就给string了,然后用string和str[2]比较,大的赋值给string,string表示的就是最大数
至于程序就不给你写了哈,理解后自己写出来更有意义些。。

~LZ,看代码应该从main开始看,怎么挨句解释呀~我们老师当初也是这么让我们看代码的,现在想想都恶心。你直接看方法有时候都不知道是什么东西,按流程来会比较好点,流程能顺利看下去,代码也就理解的差不多了。
1. 先从main开始
void main(void) //主方法,程序开始
{unsigned int temp; //无符号整型变量temp
while(1) //死循环
{ temp=ReadTemperature(); //调用ReadTemperature()方法,返回值赋给整型temp。此时主方法暂停,程序跳入ReadTemperature()方法继续运行。
//下面两个if是程序运行完ReadTemperature()返回主函数后判断所得到得temp值
if(temp<35) { L0=1;L0=0; } //if为真,L0=1. if为假,L0=0
if(temp>35) { L1=1;L1=0; } //与上同理
} }
2.uint ReadTemperature(void) //从主函数第四行调用该方法后跳入这里开始运行
{
unsigned char m=0; //无符号字符型m,赋初值0
unsigned char n=0; //同理 n附初值0
unsigned int t=0; //略。。。。
float tt=0; //浮点型,以下变量定义略。。
Init_DS18B20(); //调用Init_DS18B20()方法,此时该函数暂停运行,跳入Init_DS18B20()运行,运行完Init_DS18B20()后返回这个位置继续往下运行。

WriteOneChar(0xCC); //调用该函数,传实参0xCC,流程同上
WriteOneChar(0x44); //调用该函数,传实参0x44,流程同上

Init_DS18B20(); //调用该函数,流程同上
WriteOneChar(0xCC); //略、、
WriteOneChar(0xBE); //略、、、
m=ReadOneChar(); //调用该函数,并把它的返回值赋值给m
n=ReadOneChar(); //同上
t=n; //赋值语句
t<<=8; //t左移八位
t=t|m; //t或上m的值,结果赋给t ,这是求或结果。
tt=t*0.0625; //求值
t= tt*10+0.5;
return(t);} //把所得t值返回

基本的流程就是这样,你从main一句句就能看下去了,其中 t<<=8是位移的意思,>>=同理
其他的地方貌似也没难懂的了,基本介绍都有了,后面就按照之前的思路一句句看。
当发生方法调用时,当前运行的方法会暂停,转入调用的方法运行,运行完再回来继续运行,不要弄乱流程就好。
这么看一遍,比你从程序头看到程序尾结果好多了吧。。。

你这个都有注释了,基本不需要解释。按照注释来就行。

这是温控程序。不想给你解释~~~

哎,想当年俺也写过这种shabi程序。不解释。

不会


天宁区17813107348: 一段c语言求解析 最好每句都解释 -
磨怜香草: void view(){ int i,num; //定义变量 printf("请输入需要浏览的学生信息的学号:"); scanf("%d",&num); //为变量num赋值 getchar(); //过滤回车符号 if((i=NumExist(student,num))==-1) //调用NumExist函数 返回值赋给i 并比较i==-1 { ...

天宁区17813107348: 一个C语言程序,望详细解释.每句都要解释.不然没分!谢谢大家
磨怜香草: 第一行:算是C语言的固定格式吧,就是调用名为stdio这个文件 第二行:为输入主函数,即为main函数 第三行和最后一行:用花括号把中间的主要程序括起来,视为一个整体 第四行:输入a和b这两个整型变量,int为整型 第五行:让计算机扫描一个double型,其地址为a的地址 第六行:让计算机扫描一个double型,其地址为b的地址 第七行:输出一个double型的数,这个数即为a和b的乘积 第八行:return 0为返回初始值 int:整型 scanf:输入 printf:输出

天宁区17813107348: c语言解释 要挨句解释 -
磨怜香草: ~LZ,看代码应该从main开始看,怎么挨句解释呀~我们老师当初也是这么让我们看代码的,现在想想都恶心.你直接看方法有时候都不知道是什么东西,按流程来会比较好点,流程能顺利看下去,代码也就理解的差不多了. 1. 先从main开始 ...

天宁区17813107348: C语言程序求解释:请将以下程序逐句解释,比如什么是头文件,什么是宏定义之类的...
磨怜香草: 首先,你够狠,挣你点积分不容易,我记下你了. #include <stdio.h> #include <stdlib.h> #include <string.h> //前三条均为引用头文件 #define MAX_STEP 20 //这里是宏定义,MAX_STEP 就代表了20 //index: 0 - 狼,1-羊,2-菜,3-农夫,value:0-...

天宁区17813107348: c语言求解释,求具体解释,最好每行都解释 -
磨怜香草: int f(char str[], char *c) { int i; int j = 0; int p[256]; for (j = 0; j < 256; j++){ p[j] = 0; //初始化数组p[256]的所有元素为0 } for (i=0; str[i] != '\0';i++) //数组中最后一个字符的结尾符是'\0',这句就是循环输入的字符串 { p[str[i]]++; //当数组中有重复的字符...

天宁区17813107348: C语言编写的程序求一句一句的解释 -
磨怜香草: /*********read a string from file*/ //函数名字 int readstr(FILE *fp,char *dataarea) { //定义变量 char inputch; char temp[20]; int i=0; //如果文件指针不为空就执行下面的语句 if (fp!=NULL){//从文件中读取一个字符inputch = fgetc(fp);//如果读取的...

天宁区17813107348: C语言 求解释每句是什么意思,特别是这里的i -- 是干嘛的,起到什么作用for(i=0;str[i] != '\0'; i++);i--; -
磨怜香草: for(i = 0; str[i] != '\0'; i++);注意这里的for语句最后有一个";",for循环结束之后str指针的位置指在了字符串结束符“\0”的位置,这里的i--是为了保证此时的i在str的最后一个字符上(非"\0").请参考.

天宁区17813107348: 请C语言!请解释以下两句的具体意思!谢谢! -
磨怜香草: 比如你输入的K比如时3 a的值为“abcdefg"; p=a+k-1; 就是把P指向第3个元素c; p<'\0'这个地址 *p=*(p+1); c =d; d = e; ...

天宁区17813107348: C语言程序,求详细解释!! 具体每一步的解释,谢谢~~ -
磨怜香草: int i,j,x=0; //定义三个整形变量,赋值为0 for (i=0;i<20;i++) //for循环 i从0开始逐渐加1,循环20次.{x=x+1; //x+1再赋值给x自己 for (j=0;j<3;j++){ //for循环 j从0逐渐加1 ,循环3次.if(j%2) continue; //如果 j取余2 不等于0,也就是if条件为true,就不...

天宁区17813107348: C语言语句解释
磨怜香草: 默认argc为1,argv[0]为程序名称如果输入一个参数,则argc为2,argv[0]为程序名称,argv[1]为输入的那个参数依此类推,多个参数的情况上面函数的意思是,如果argc等于1,表示没有输入参数,直接退出,如果不等于1,则表示肯定至少有一个参数,那么argv[1]就肯定有值了,可以进行逻辑判断处理

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网