关于#c语言#的问题:【error】breakstatementnotwithinlooporswitch#include <stdio.h>

#include<stdio.h>
#include<conio.h>

void aa(int m)
{
    if(m==1) 
    break;
    if(m!=1)
    {
      if(m%2==0) m=m/2;
      else m=3m+1;
    }
    printf("%d",m);
    
}





int main()
{
    int m,n=0;
    printf("please input a positive integer:");
    scanf("%d",m);
    if(m<0||m==0) printf("input incorrect data!");
    else do {
            aa(m);
            n++;
           }while(m>0&&n<=100);
    printf("最后的递推值为%d,递推次数为%d",m,n-1);
    
    
    
}



img

3*m,不能直接写3m

#include<stdio.h>
#include<conio.h>
void aa(int m)
{
    if(m==1) 
    return;
    if(m!=1)
    {
      if(m%2==0) m=m/2;
      else m=3*m+1;
    }
    printf("%d",m);
}
 
 
int main()
{
    int m,n=0;
    printf("please input a positive integer:");
    scanf("%d",m);
    if(m<0||m==0) printf("input incorrect data!");
    else do {
            aa(m);
            n++;
           }while(m>0&&n<=100);
    printf("最后的递推值为%d,递推次数为%d",m,n-1);
    
}

break不在循环里