为什么运行不出结果?

蓝桥杯成绩统计

#include<stdio.h>
int main()
{
	int n,i,j,k,max,min,sum,c;
	int b[101];
	scanf("%d",n);
	while(n--){
		for(i=0;i<n;i++){
		int b[101];
    	scanf("%d",b[i]);
    	if(i==0){
    	   max=b[0];
		   min=b[0];
		   j=0;
		   k=0;
		   continue;
		}
    	if(max<b[i]){
    		max=b[i];
    		k=i;
		}
		if(min>b[i]){
			min=b[i];
			j=i;
		}
		sum=sum+b[i];
		c=sum/i;
	  }
	  printf("%d\n",b[k]);
	  printf("%d\n",b[j]);
	  printf("%d\n",c);
	}
	return 0;
}

是死循环了么?我是菜鸡,看不出来,sos

 

  1. #include<stdio.h>
    int main()
    {
    	int n,i,j,k,max,min,sum,c;
    	int b[101];
    	scanf("%d",&n);
    	int t=n;
    	while(t--){
    		for(i=0;i<n;i++){
                int b[101];
                scanf("%d",&b[i]);
                if(i==0){
                   max=b[0];
                   min=b[0];
                   j=0;
                   k=0;
                   continue;
    		}
        	if(max<b[i]){
        		max=b[i];
        		k=i;
    		}
    		if(min>b[i]){
    			min=b[i];
    			j=i;
    		}
    		sum=sum+b[i];
    		c=sum/i;
    	  }
    	  printf("%d\n",b[k]);
    	  printf("%d\n",b[j]);
    	  printf("%d\n",c);
    	}
    	return 0;
    }
    

    第一输入没有取地址符,第二循环n是输入进来的直接用容易出错

        如果有帮助请点一下我回答右上方的采纳,谢谢!以后有什么问题可以互相交流。

删除第9行代码

建议把题目一起发出来,你也打暴力杯阿,一起阿。

算法题只有代码是看不出什么问题的。。

#include<stdio.h>
int main()
{
	int n, i, j, k, max, min, sum = 0, c = 0;
	int b[101];
	scanf("%d", &n);
	while (n--) {
		for (i = 0; i < n; i++) {
			int b[101];
			scanf("%d", &b[i]);
			if (i == 0) {
				max = b[0];
				min = b[0];
				j = 0;
				k = 0;
				continue;
			}
			if (max < b[i]) {
				max = b[i];
				k = i;
			}
			if (min > b[i]) {
				min = b[i];
				j = i;
			}
			sum = sum + b[i];
			c = sum / i;
		}
		printf("%d\n", b[k]);
		printf("%d\n", b[j]);
		printf("%d\n", c);
	}
	return 0;
}

用scanf赋值,参数要用指针。

变量要初始化

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632