百韵网 >>  正文

高分悬赏C语言高手帮我把这段C程序加注释

来源:www.baiyundou.net   日期:较早时间
void print(int k) // 打印结果
{
if(out[k].pre != -1){
print(out[k].pre);
int i,j,f = out[k].data,tt;
printf("第%d步:\n",no++);
for(i = 2; i >= 0; i--){
for(j = 2; j >= 0; j--){
ot[i][j] = f%10;
f /= 10;
}
}
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
if(ot[i][j] == 0)
printf(" ");
else
printf("%d ",ot[i][j]);
}
printf("\n");
}
printf("\n");
}
}
int main(void)
{
int i,j,k,temp[9],s;
bool used[9] = {0};
char op[10];
printf("\t\t\t******************************\n");
printf("\t\t\t* 八数码问题A*搜索求解程序 *\n");
printf("\t\t\t* *\n");
printf("\t\t\t******************************\n\n\n");
printf("程序默认目标状态为:\n");
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
printf("%d ",ter[i][j]);
}
printf("\n");
}
while(1){
printf("确认请输入y,取消另输入目标状态请输入n:");
scanf("%s",op);
if(op[0] == 'n'){
printf("请参照上面的样式输入目标状态(空白位置以0代替):\n");
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
scanf("%d",&ter[i][j]);
}
}
}
else if(op[0] != 'y')
printf("输入错误!\n");
else
break;
}
while(1){
printf("请参照上面的格式输入初始状态(空白位置以0代替):\n");
k = 0;
bool error = false;
memset(used,0,sizeof(used));
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
scanf("%d",&sta[k]);
ot[i][j] = sta[k];
if(used[sta[k]]){
error = true;
}
used[sta[k]] = 1;
temp[k++] = ter[i][j];
}
}
int ts = nxnum(sta);
int tt = nxnum(temp);
if(error){
printf("输入错误(有相同数字出现),请重新输入!\n");
continue;
}
if((ts&1) != (tt&1)){
printf("从初始状态无法到达目标状态,请重新输入。\n");
}
else break;
}
if(H(ot) == 0){
printf("所输入状态就是目标状态!\n");
return 0;
}
s = 0;
for(i = 0; i < 9; i++){
s = s*10 + sta[i];
}
astar(s);
print(pout);
printf("第%d步:\n",no);
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
if(ter[i][j] == 0)
printf(" ");
else
printf("%d ",ter[i][j]);
}
printf("\n");
}
printf("共走了%d步。\n",no);

long t = 10000000L;
clock_t start, finish;
double duration;
/* 测量一个事件持续的时间*/
start = clock();
while( t-- ) ;
finish = clock();
duration = (double)(finish - start) / CLOCKS_PER_SEC;
printf( "搜索算法执行时间为:%f seconds\n", duration );
return 0;
}
我是提问者,这是代码,问题有字数限制,发不完

#include <stdio.h> 说明运用了那些式法
#include <map>
#include <memory.h>
#include <stdlib.h>
#include <time.h>前面这些都是定义的,后面要用到
using namespace std;
#define SIZE 1000000定义的size
struct QUEUE 结构体语句
{int data,pre,f,deep;
}heap[SIZE]; //用顺序结构定义一个最小二叉堆
int pout,tail,ter[3][3] = {{1,2,3},{8,0,4},{7,6,5}},sta[9]; //定义目标状态
struct OUT
{int data,pre;
}out[SIZE];
void swap(QUEUE &a, QUEUE &b) //结构体交换值 交换下面成分

if(mp[tf] == 0){
mp[tf] = 1;
add.data = tf;
add.deep = tstatu.deep;
i = H(tt);
add.f = add.deep + i;
add.pre = pout;
if(i == 0)
return true;
push(add);
}
}
}
return false;
}
int no = 1,ot[3][3];

靠 我看是看得懂 怎么跟你说啊 打字都能累死啊!!!!
你是直接复制了到简单
有个C语言诠释网 你去百度搜一下 把这个程序发上去 很快会有人回你的!!!

i服了you,这问题不算难就是很累人啊,我只好路过啦--

我服了

意思就是说程序有问题,请重新下载
要直接登陆也行

C语言程序求加注释~

178876254@qq.com

#include #include int main(){int m,n;m=rand()%100+1;//产生一个随机数范围1~100printf ("请输入一个数:");scanf ("%d", &n);//输入一个数if(n == m)//你输入的数和随机产生的数相等时printf ("Right
");else if(n > m)//你输入的数大于随机产生的数时printf ("Wrong!Too high!
");else//你输入的数小于等于随机产生的数时printf ("Wrong!Too low!
");return 0;}

相关要点总结:

15128351513:高分悬赏:一个简单C语言程序,相信大神们只需一刻钟就能搞定。需要完整...
丁裕答:void average(int *num,int n){ int i;int sum = 0;float aver;for(i=0; i<n; i++){ sum += *(num++);} aver = (float)sum/(float)n;printf("the average of the array is %.2f\n",aver);return ;} void sort(int *num,int *p,int n){ int i,j;int *q = p;int...

15128351513:C语言程序分析题 大佬救救我?
丁裕答:答案:这2段程序不相等。第一段程序的输出结果:1 1 1、2 2 2、3 3 3、4 4 4;第二段程序的输出结果:1 1 1。分析:第一段程序使用for循环,每一次循环时,都对变量进行了初始赋值,即i=1,j=1,k=1。就是说,嵌套的内循环变量,如j,k都是从1开始的。而第二段程序使用while循环,循...

15128351513:高分悬赏 求三维数据点C语言插值计算程序
丁裕答:1.拉格朗日插值简介:对给定的n个插值节点x1,x2,…,xn,及其对应的函数值y1=f(x1), y2=f(x2),…, yn=f(xn);使用拉格朗日插值公式,计算在x点处的对应的函数值f(x);2.一维拉格朗日插值c语言程序:Int lagrange(x0, y0, n, x, y)Float xo[], yo[], x;Int n;Float *y { Int i...

15128351513:高分悬赏C语言程序
丁裕答:printf("%d\t",pp[i].b);printf("%d\t",pp[i].c);printf("%d\t",pp[i].d);printf("\n"); } getch();}

15128351513:哪位高手能帮我编以下c语言的程序
丁裕答:我的 哪位高手能帮我编以下c语言的程序 7、编制一个程序,将一个ASCII文件的内容复制到一个新文件中,且在复制时用小写字母代替大写字母,并计算出被转换字符的个数。8、写一个程序以比较两个文件的内容是否相同,并打印出两... 7、编制一个程序,将一个ASCII文件的内容复制到一个新文件中,且在复制时用小写字母...

15128351513:C语言编程(高分悬赏)
丁裕答:define n 10 //定义一个宏,做到一改全改 void main( ){ int i;float a[n]; //数组为浮点型 float av; //类型为浮点型,否则可能丢失数据 //输入10个数 for(i=0; i<n; i++)scanf("%f",&a[i]); //少了取地址符'&',并改'%d'为'%f'//输出10个数 for(i=0 ;i...

15128351513:请哪位高人帮我把这段C语言代码转换成MIPS汇编语言
丁裕答:6 .LC1:8 .text 9 .globl main 10 .type main, @function 11 main:12 .LFB0:13 .cfi_startproc 14 pushq %rbp 15 .cfi_def_cfa_offset 16 16 .cfi_offset 6, -16 17 movq %rsp, %rbp 18 .cfi_def_cfa_register 6 19 addq $-128,...

15128351513:C语言编写一个程序,急用!!高分悬赏(正确答案追加分数)
丁裕答:infilename,"rt");outfp = fopen(outfilename,"wt");if(infp == NULL || outfp == NULL) {printf("无法打开数据文件。\n");return 1;}while(fscanf(infp,"%d%d%lf%lf%lf%lf",&year,&id,&a,&b,&c,&d) == 6)if(id == 1) fprintf(outfp,"%lf %lf %lf %lf\n"...

15128351513:高分悬赏急求哪位单片机C语言编程高手帮我翻译这个程序,由于要提问到...
丁裕答:从你的程序上看,液晶应该由上下两块显示Page组成,然后上面的Page显示4个汉字的上半段,下面显示4个汉字的下半段,所以有8个Page,和你的void lcd_clear(void) 函数也就对应了。void dispm_hz_down(uchar code * hz)

15128351513:用C语言写一段程序,高手快来哦!
丁裕答:i);sort(x);printf("排序后为:\n");for(i = 0; i < RANGE; i++) printf("%d\t", x[i]);printf("\n请输入要搜索的整数:");scanf("%d", &y);i = search(x, y);if (i < 0)printf("无此数\n");else printf("这是数组中的第%d个元素\n", i+1);return 0;} ...

(编辑:本站网友)
相关推荐
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图
@ 百韵网