Exemplo n.º 1
0
int main(){
   FILE *fin = fopen("transform.in","r");
   FILE *fout = fopen("transform.out","w");
   //freopen("/home/plac/fproblem/input.txt","r",stdin);
   //freopen("/home/plac/fproblem/output.txt","w",stdout);
   fscanf(fin,"%d",&n);
   memset(str,0,sizeof(str));
   memset(change,0,sizeof(change));
   for(int i = 1; i <= n;i ++)
	   fscanf(fin,"%s",&str[i][1]);
   for(int i =1 ;i<= n; i ++ )
	   fscanf(fin,"%s",&change[i][1]);
   if(change1(str))
	   fprintf(fout,"1\n");
   else if(change2(str))
	   fprintf(fout,"2\n");
   else if(change3(str))
	   fprintf(fout,"3\n");
   else if(change4(str))
	   fprintf(fout,"4\n");
   else if(change5(str))
	   fprintf(fout,"5\n");
   else if(change6(str))
	   fprintf(fout,"6\n");
   else fprintf(fout,"7\n");


return 0 ;
}
Exemplo n.º 2
0
int main(int argc, const char * argv[]) {
    int number =10;
    int n = change(number);
    printf("n=%d\n",n);
    printf("number=%d\n",number);//在这里number的值还是10,因为作用蜮的原因,传递的是值而不是地址。在swift中也是这样,
    int ages[3] = {1,2,3};
#pragma mark-zkz------用数组作为函数的参数的函数,在函数里修改数组的值,会影响外边的数组的值
    //数组名就是数组的地址。
    change1(ages);
    int count = sizeof(ages)/sizeof(int);
    for (int i = 0; i<count; i++) {
        printf("ages[%d]=%d\n",i,ages[i]);
        //ages[0]=88;
    }
    
    
#warning mark-zkz-
#pragma mark--zkz---当数组作为参数传递的时候是地址传递,所以自动转换成指针类型,指针类型和其他数据类型一样也是占据一定的存储空间,占用8个字节。所以数组无论有多大,它打印只是8个字节的元素。
    int ages1[3]={1,3,5};
    int count2 = sizeof(ages1);
    printf("main size count2 = %d\n",count2);
    change2(ages1);//打印的是1,3但是没有打印5因为指针类型的占用8个字节两个int类型一共占有8个字节,要想全部便利那么就要再传递那个数组的长度。
    change3(ages1,count2/sizeof(int));//在传递数组名(地址)的同时还要传递数组的长度。
    
    return 0;
}
Exemplo n.º 3
0
int change5(char s[][100])
{
    for(int i = 1;i<= n;i ++)
		for(int j = 1;j<= n;j ++)
		{
		  temp[i][j] = s[i][n-j+1];
		}
	if(change1(temp))
		return 1;
	if(change2(temp))
		return 1;
	if(change3(temp))
		return 1;
	return 0 ;
}