从键盘输入的十个整数中的最大数和最小数

《程序设计基础-c语言》杨莉 刘鸿翔  
ISBN-978-7-03-032903-5  
p137
习题5

代码

5.下面是一个从键盘输入的十个整数中的最小数和最大数的有错误且并不完整的程序,进行调试运行,写出正确的程序

原题代码

错误代码

#include<stdio.h> //错误代码
#include<string.h>
int main()
{ 
	int a[10],*p=a,min=amax,i;
	scanf("%d",p);
	for(i=0;i<10;i++)
	{ 
		if(min>p[i])
			min=p[i];
		if(max<p[i])
			max=p[i];
	}
	printf("min=%d\nmax=%d\n",min,max);
}

修改后的代码

正确代码

#include<stdio.h>
#include<string.h>
#define MAX 1e-4
int main()
{ 
	int a[10],*p=a,min=-MAX,max=MAX,i;	//min、max初始化(原程序未初始化)
	for(i=0;i<10;i++)
	{ 
		scanf("%d",(p+i));	//数组输入(原程序*p只指向数组第一个元素)
	}
	for(i=0;i<10;i++)
	{ 
		printf("%d\t",*(p+i));	//数组输出 
	}
	puts("\n");	//非必要 
	for(i=0;i<10;i++)
	{ 
		if(min>p[i])
			min=p[i];
		if(max<p[i])
			max=p[i];
	}
	printf("min=%d\nmax=%d\n",min,max);
}

测试样例

《从键盘输入的十个整数中的最大数和最小数》

    原文作者:折腾的小飞
    原文地址: https://blog.csdn.net/qq_41666142/article/details/105849500
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞