C语言程序设计 源代码+注释

2024-05-08 09:55

1. C语言程序设计 源代码+注释

采用广度优先搜索即可,程序如下:
 
char A[64][64]= {"..###","#....","#.#.#","#.#.#","#.#.."};//迷宫,A,R,C这里预设,实际请改成输入 
int M[64][64] = {0},    //标记走过的点
 R = 5, C = 5;      

//判断点(x,y)是否可达
bool pass(int x, int y) 
{
 return x>=0 && x=0 && y<=C
  && A[x][y]=='.' && !M[x][y];
}
//广度搜索
int steps()
{
 struct{ int x, y, depth;}Queue[256], t;    //队列
 int front = 0, rear = 0,    //头尾指标
  di[4][2] = {{1,0},{0,-1},{-1,0},{0,1}};    //方向数组
 int i, new_x, new_y; 

 
 Queue[rear].x = 0;     //初始点入队
 Queue[rear].y = 0;
 Queue[rear++].depth = 1;
 M[0][0] = 1;    //标记该店 

   
 while(front != rear) 
 {
  t = Queue[front++];        //出队
  for(i=0; i<4; i++)        //遍历每个方向
  {
   new_x = t.x+di[i][0];    //产生新的坐标
   new_y = t.y+di[i][1];
   if(pass( new_x, new_y))    //若可达
   {
    if(new_x==R-1 && new_y==C-1)return t.depth+1;    //结束条件
    //入队
    Queue[rear].x = new_x;    
    Queue[rear].y = new_y;
    Queue[rear++].depth = t.depth+1;
    M[new_x][new_y] = 1;    //同样标记入队的点
   }
  }
 }
 return -1;    //无法走到终点,返回-1
}
int main()
{
 printf("%d", steps());
}

C语言程序设计 源代码+注释

2. 读懂所给程序的C语言源代码,加注释

#include
#define uchar unsigned char //宏定义
#define uint unsigned int  //宏定义
uchar code DSY_Index[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//数码管位码
uchar code BCD_CODE[]={2,0,1,0,10,3,10,5};//待显示数字(10为不显示)
//延时
void DelayMS(uint ms)
{
	uchar i;
	while(ms--) 
               for(i=0;i<120;i++);
}
//主程序
void main()
{
	uchar k;
	while(1)
	{
		for(k=0;k<8;k++)//循环八次
		{
			P2=DSY_Index[k];//位码送P2口逐个低电平
			P1=BCD_CODE[k];
			DelayMS(1);
		}
	}
}
//你根本就没写段码,你的P1口输出的是二进制显示,比如k=0时P1.1口输出高电平。这是个不完整的程序

3. C语言源程序注注释符号是?

单行注释和成对注释。单行注释以双斜线(//)开头。同一行中斜线右侧的所有内容都是注释,会被编译器略过。
  另一个分隔符是注释符号对(/* */),它继承自C语言。这种注释以/*开始,以*/结尾。编译器把/*和*/之间的部分都作为注释来处理

 注释符号对可以放置在允许输入tab、空格或新行的任何地方。注释符号对可以跨越程序的多个行,但是不是必须这样做的。当注释符号对没有跨越多个行,通常表明内部行是多行注释的一部分。我们的样式是每行以星号开始,因此表明整个范围都是多行注释的部分。

  典型情况下程序包含多种注释形式。注释符号对通常用做多行解释,而双斜线注释倾向于半行或单行注释。

  程序中混合了太多的注释可能使代码混乱。通常在要解释的代码上方放置注释。

  随着代码的改变,注释也应该保持更新。程序员希望注释是精确的,并且很相信它们,即使其它形式的系统文档过期了。不正确的注释比没有注释还有糟糕,因为它会误导随后的阅读者。

  注释符号对不能嵌套

  以/*开始的注释通常以*/结束。其结果是一个注释符号对不能出现在另一个之中。这类程序错误导致的编译器错误消息可能难以理解。

C语言源程序注注释符号是?

4. 求代码 用C语言做一个简单的新闻管理系统 加注释 求高手

这个很简单,不过估计没人愿意花时间写这个
再简单也得要1个小时时间做吧
尤其是程序员 天天忙 有时间也想休息休息,没有酬劳谁愿意做呢
除非给你个源码
另外,团IDC网上有许多产品团购,便宜有口碑

5. C语言 加注释 给下面的代码加上注释 谢谢了。。

class Program               /*定义一个类 Program*/
    {
        public abstract class Shape      /*定义一个公共抽象类Shape*/
        {
            protected string color;         /*局部变量 字符型 变量 color*/
            public Shape(string c)      /*定义函数Shape   形参c*/
            {
                this.color = c;
            }
 一步一步写太麻烦了     这是JAVA的问题

C语言 加注释 给下面的代码加上注释 谢谢了。。

6. 求C语言投票系统源代码代码的注释。

#include
#include 
struct hxr
{	
	int m; 
	int point;  
} hxr[3]; //选票结构体
void main() 
{    
	int i=0,j=0,k,temp=0;
	char x,y,z;	
	struct hxr hxr[3];	
	for(i=0;i<3;i++)//初始化选票结构体
	{		
		hxr[i].m=i;		
		hxr[i].point=0;		
	}	
	printf("请输入投票总人数\n");	
	scanf("%d",&k);
	printf("请输入投票\n");	
	getchar();	
	for(i=1;i<=k;i++)
	{		
		scanf("%c%c%c",&x,&y,&z);	//输入选票	
		getchar();		
		if(x!=y&&x!=z&&y!=z)//3个选票不能相同否则为无效选票
		{			
			hxr[0].point+=(x=='a'?5:(y=='a'?3:(z=='a'?2:0))); 		//统计a的得票数,切输入3个选票从左到右得分分别是5.3.2
			hxr[1].point+=(x=='b'?5:(y=='b'?3:(z=='b'?2:0)));		
			hxr[2].point+=(x=='c'?5:(y=='c'?3:(z=='c'?2:0)));		
			printf(" point: %d  %d  %d\n",hxr[0].point,hxr[1].point,hxr[2].point);	//输出a,b,c的得分	
			continue;			
		}		
		printf("此票无效\n");	
	}	
	for(i=0;i<3;i++)//分别输出a,b,c的得分
	{		
		if(temp<hxr[i].point)
		{			
			temp=hxr[i].point;			
			j='a'+i;			
		}		
		printf("people %c point %d\n",'a'+hxr[i].m,hxr[i].point);
	}	
	if(((hxr[0].point==hxr[1].point)&&hxr[0].point>=hxr[2].point&&hxr[1].point>=hxr[2].point		) 		||( (hxr[0].point==hxr[2].point)&&hxr[0].point>=hxr[1].point&&hxr[2].point>=hxr[1].point)  		||((hxr[1].point==hxr[2].point)&&hxr[1].point>=hxr[0].point&&hxr[2].point>=hxr[0].point))     
		printf("重新投票\n");	
	else
	{		printf("祝贺%c当选冠军\n",j);  }	
	getchar();  
}

7. 给c语言加注释

)
在编写C语言源代码时,应该多使用注释,这样有助于对代码的理解。在C语言中有两种注释方式:
一种是以/*开始、以*/结束的块注释(block comment);
另一种是以//开始、以换行符结束的单行注释(line comment)。

可以使用/*和*/分隔符来标注一行内的注释,也可以标注多行的注释。例如,在下列的函数原型中,省略号的意思是 open() 函数有第三个参数,它是可选参数。注释解释了这个可选参数的用法:
int open( const char *name, int mode, … /* int permissions */ );
可以使用//插入整行的注释,或者将源代码写成两列分栏的格式,程序在左列,注释在右列:
const double pi = 3.1415926536;       // pi是—个常量

在 C99 标准中,单行注释正式加入C语言,但是大部分编译器在 C99 之前就已经开始支持这种用法。有时候,其被称作“C++风格”的注释,但实际上,其源自于C的前身 BCPL。

在引号中,如果采用/*或//分隔一个字符常量或字符串字面量(string literal),它们都不会被视为注释的开始。例如,下面语句就没有注释:
printf("Comments in C begin with /* or //.\n" );
预处理器仅通过检查注释的结束符来检测注释中的字符,因此,不能嵌套块注释。然而,可以使用/*和*/注释包含单行注释的源代码:
/* 暂时注释掉这两行:
    const double pi = 3.1415926536;  // pi是一个常量
    area = pi * r * r;   // 计算面积
暂时注释到此 */

如果想要注释掉包含块注释的部分程序,可以使用条件预处理命令:
#if 0
  const double pi = 3.1415926536;   /* pi是一个常量      */
  area = pi * r * r ;  /* 计算面积     */
#endif
预处理器会把每个注释都替换成一个空格。因此,min/*max*/Value变成两个标记min Value。
所有教程

给c语言加注释

8. 谁能教我 怎么用C语言编写 一个窗口? 求源代码 加上注释 谢谢

#include #include #include int main(){	printf("输入一个字符, 就会出现窗口");	getch();	MessageBox(NULL,"这就是你要的窗口!这就是你要的窗口!\n这就是你要的窗口!这就是你要的窗口!\n这就是你要的窗口!这就是你要的窗口!","hahah",MB_ICONERROR | MB_YESNO);	return 0;}