你算哪个bug


私信TA

用户名:qiao

访问量:41223

签 名:

请一定不要停下来成为你想成为的人鸭!

等  级
排  名 57
经  验 10560
参赛次数 4
文章发表 46
年  龄 20
在职情况 学生
学  校
专  业 计网

  自我简介:

在最好的年龄成为一个优秀的人,是最美的成长了

 

0.0分

348 人评分

  评论区

#include <stdio.h>
int main(){
	int N;
	scanf("%d",&N);
	int number[N];
	int i,j,sum=0;
	for(i=0;i<N;i++){
		number[i]=i+4;
		sum=0;
		for(j=1;j<number[i];j++){
			if(number[i]%j==0){
				sum+=j;
				if(number[i]==sum){
					printf("%d\n",number[i]);
				}
			}
		}
	}
	return 0;
}
各位大佬,能不能帮忙看看,当我键入N=1000的时候,会多一个24出来,其他的结果和题目给的例子是符合的,想知道是哪里出了问题
2024-03-15 17:45:36
#include<stdio.h>
int main()
{
	int N,sum=0,k;
	char arr[1001]="0";
	scanf("%d",N);
	for(int i=1;i<=N;i++)
	{
		sum=0,k=0;
		for(int j=1;j<i;j++)
		{
			if(i%j==0)
			{
				sum+=j;				
				arr[k++]=j;
				
			}
			
		}
		if(sum==i){
			printf("%d its factors are",i);
			for(int l=0;l<k;l++){
				printf(" %c",arr[l]);
			}
             printf("\n");    
		}
			
	}
	return 0;
}

//想知道错在哪,为什么输出不出内容
2024-03-07 20:14:00
#include<stdio.h>
int main()
{
    int N;
    scanf("%d",&N);
    for(int i=2;i<=N;i++){
        int sum=0;
        for(int j=1;j<i;j++){
            if(i%j==0){
                sum+=j;
            }
        }
        if(sum==i){//找到完数立马循环输出因子
            printf("%d its factors are",i);
            for(int j=1;j<i;j++){
                if(i%j==0){
                    printf(" %d",j);
                }
            }
            printf("\n");
    }
  }
    return 0;
}
2024-03-06 00:26:00
看我这个
#include <stdio.h>
int main()
{
	int n = 0;
	scanf("%d", &n); 
	int arr[100] = { 0 };
	for (int i = 6; i <= n; i++)
	{
		int c = 0,d=0;
		for (int j = i; j >= 2; j--)
		{
			if (i % j == 0)
			{
				arr[c++] = i / j;
				d += (i / j);
			}
		}
		if (d == i)
		{
			printf("%d its factors are ", i);
			for (int e = 0; e < c; e++)
			{
				printf("%d ", arr[e]);
			}
			printf("\n");
		}
	}
	return 0;
}
2024-02-08 14:00:40
不用数组也是可以的
#include<stdio.h>
int main()
{
	int n,i,j;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		int x=0;
		for(j=1;j<i;j++)
			if(i%j==0)
			{
				x+=j;
			}
	if(x==i)
	{
		printf("%d its factors are ",i);
		for(j=1;j<x;j++)
		{
			if(x%j==0)
			{
				printf("%d ",j);
			}
		}
		printf("\n");
	}
	}
	return 0;
}
2024-02-06 13:58:16
写出来跟测试的结果完全一致,不知道哪里出问题了
#include<stdio.h>
int main()
{
   int n,i,j,k;
   scanf("%d",&n);
   for(i=1;i<=n;i++){
       int sum=0;
       for(j=1;j<i;j++){
           if(i%j==0){
               sum+=j;
           }
       }
       if(sum==i){
           printf("%d its factor are",i);
           for(k=1;k<i;k++){
               if(i%k==0){
                   printf(" %d",k);
               }
           }
           printf("\n");
       }
   }
}
2024-01-26 21:49:03
#include<stdio.h>
int main()
{
	int i,j,N,l;
	int sum=0,k=0;
	int x[100];
	scanf("%d",&N);
	for(i=1;i<=N;i++)
	{
		for(j=1;j<i;j++)
		{
			if(i%j==0)
			{
				sum+=j;
				x[k]=j;
				k++;
			}
		}
		if(sum==i)
		{
			printf("%d its factors are",i);
			for(l=0;l<k;l++)
			{
				printf(" %d",x[l]);
			}
			printf("\n");
		}
		sum=0;
		k=0;
	}
	return 0;
}
        我这个也可以
2024-01-15 21:16:27
请大佬帮忙看一下,感觉思路都一样的不知道出错在哪里
我调试的结果:

6 its factors are 1 2 3
28 its factors are 1 2 4 7 14

问题在第三行没有出现
#include<stdio.h>
void main()
{
	int i,n,u,k;
	int a[15],m=0;
	scanf("%d",&n);
	for(u=1;u<=n;u++)
	{
		k=u;
		for(i=1;i<=u/2;i++)
		{
			if(u%i==0)
			{
				k=k-i;
				a[m]=i;
				m++;
			}
		}
		if(k==0)
		{
			printf("%d its factors are",u);
			for(i=0;i<m;i++)
				printf(" %d",a[i]);
			printf("\n");
		}
		m=0;
	}
}
2023-12-30 18:06:30