modi43.c

来自「c题库」· C语言 代码 · 共 41 行

C
41
字号
/*
下列给定程序中,函数fun的功能是:找出100至n(不大于1000)之间三位数字相等的所有整数,把这些整数放在s所指数组中,个数作为函数值返回。
请改正函数fun中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
*/

#include <stdio.h>
#define N 1000
int fun(int *s,int n)
{	int i,j,k,a,b,c;
	j=0;
	for(i=100;i<n;i++)
	{
/**********found************/
		k=n;
		a=k%10;k/=10;
/**********found************/
		b=k%10;k/=10;
		c=k/10;
		if(a==b&&a==c)s[j++]=i ;
	}
	return j;
}

main()
{	int a[N],n,num=0,i;
	do
	{	printf("\nEnter n(<=100): ");scanf("%d",&n); 
	}while(n>1000);
	num=fun(a,n);
	printf("\n\nThe result :\n");
	for(i=0;i<num;i++)printf("%5d",a[i]);
	printf("\n\n");
}

/*
答案:
 k=n; 改为 k=I;
 b=k%10;k/=10; b=k%10; 
 return j改为return j++;
*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?