社区讨论

c求助,用的指数做的?请问哪里错了

P5727【深基5.例3】冰雹猜想参与者 3已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@lp9bk61o
此快照首次捕获于
2023/11/22 13:23
2 年前
此快照最后确认于
2023/11/22 17:00
2 年前
查看原帖
CPP
#include<stdio.h>

   int main(){

   int n=0,sz;
    
   int arr[100];
    
	int* p=arr;
    
	int cout=0;
    
	scanf("%d\n",&n);
    
	*p=n;
    
	while(1){
    
	 if(n%2==0){
     
	 	*(p+1)=n/2;
        
	 	 n=n/2;
         
	 	p++;
        
	 	cout++;
        
	 }
     
	 else{
     
	   *(p+1)=n*3+1;
       
	    n=n*3+1;
        
	   p++;
       
	   cout++;}
       
	 if(*p==1)
     
	   break;
	}
	sz=&arr[cout]-&arr[0];
    
	for(int j=sz;j>=0;j--){
    
		printf(" %d ",arr[j]);
        
	}
    
	return 0;
    
}

回复

2 条回复,欢迎继续交流。

正在加载回复...