|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
黑框是调试代码出来的结果,是我想要的,但是当我直接编译运行,他却运行不出来???
- #include <stdlib.h>
- #include <stdio.h>
- int pan_duan(int **aa,int i,int j,int *TOL,int n,int m);
- int main()
- {
- int M,N,TOL;
- scanf("%d%d%d",&M,&N,&TOL);
- int i,j;
- //动态分配内存 -->二维数组
- int **fen = (int **)malloc(N*sizeof(int));
- for(i=0;i<N;i++)
- {
- fen[i] = (int *)malloc(M*sizeof(int));
- }
- //存储内容
- for(i=0;i<N;i++)
- {
- for(j=0;j<M;j++)
- {
- scanf("%d",&fen[i][j]);
- getchar();
- }
- }
- //判断色差阈值
- int count = 0,index_i,index_j,index_num;
- for(i=1;i<N-1;i++)
- {
- for(j=1;j<M-1;j++)
- {
- printf("%d",panduan(fen,i,j,&TOL,N,M));
-
- if(panduan(fen,i,j,&TOL,N,M))
- {
- count++;
- index_i = i+1;
- index_j = j+1;
- index_num = fen[i][j];
- }
- }
- putchar('\n');
- }
- if(count == 1)
- {
- printf("(%d,%d):%d",index_j,index_i,index_num);
- }
- else if(count == 0)
- {
- printf("Not Exist");
- }
- else if(count >1)
- {
- printf("Not Unique");
- }
- for(i=0;i<N;i++)
- {
- free(fen[i]);
- }
- free(fen);
- }
- int panduan(int **aa,int i,int j,int *TOL,int n,int m)
- {
- int T =*TOL;
- int num = aa[i][j];
-
- if(i>0&&i<n-1&&j>0&&j<m-1)
- {
- if(num-aa[i-1][j-1]>T &&num-aa[i-1][j]>T&&num-aa[i-1][j+1]>T
- &&num-aa[i][j-1]>T&&num-aa[i][j+1]>T&&num-aa[i+1][j-1]>T
- &&num - aa[i+1][j]>T&&num-aa[i+1][j+1]>T)
- return 1;
- else
- return 0;
- }
- else
- {
- return 0;
- }
- }
复制代码 而且不知道为啥还有警告………………
|
|