C语言精选好题-你是天才吗?

2024-01-18 15:13:21 浏览数 (2)

题目:        

        据说智商140以上者称为天才,KiKi想知道他自己是不是天才,请帮他编程判断。输入一个整数表示一个人的智商,如果大于等于140,则表明他是一个天才,输出“Genius”。 输入描述: 多组输入,每行输入包括一个整数表示的智商。 输出描述: 针对每行输入,输出“Genius”。

多数人的做法:

代码语言:javascript复制
int main()
{
	int iq = 0;
	scanf("%d", &iq);
	if (iq >= 140)
		printf("Genius");
	return 0;
}

此做法未理解“多组输入”的含义,“多组输入”:指程序可以多次判断输入的数据,若要退出运行需要按三次CTRL Z,若按上面这种代码运行只能判断一次程序就会自动退出

修改后的标准做法:

写法一:

代码语言:javascript复制
#include<stdio.h>
int main()
{
	int iq = 0;
	while (scanf("%d", &iq)==1)//scanf函数正常读取返回1,CTRL Z时scanf会返回EOF
	{
		if (iq >= 140)
			printf("Geniusn");
	}
	return 0;
}

写法二:

代码语言:javascript复制
#include<stdio.h>
int main()
{
	int iq = 0;
	while (scanf("%d", &iq)!=EOF)//scanf函数正常读取返回1,CTRL Z时scanf会返回EOF
	{
		if (iq >= 140)
			printf("Geniusn");
	}
	return 0;
}

0 人点赞