题目:
据说智商140以上者称为天才,KiKi想知道他自己是不是天才,请帮他编程判断。输入一个整数表示一个人的智商,如果大于等于140,则表明他是一个天才,输出“Genius”。
输入描述:
多组输入,每行输入包括一个整数表示的智商。
输出描述:
针对每行输入,输出“Genius”。
多数人的做法:
int main()
{
int iq = 0;
scanf("%d", &iq);
if (iq >= 140)
printf("Genius");
return 0;
}
此做法未理解“多组输入”的含义,“多组输入”:指程序可以多次判断输入的数据,若要退出运行需要按三次CTRL+Z,若按上面这种代码运行只能判断一次程序就会自动退出
修改后的标准做法:
写法一:
#include<stdio.h>
int main()
{
int iq = 0;
while (scanf("%d", &iq)==1)//scanf函数正常读取返回1,CTRL+Z时scanf会返回EOF
{
if (iq >= 140)
printf("Genius\n");
}
return 0;
}
写法二:
#include<stdio.h>
int main()
{
int iq = 0;
while (scanf("%d", &iq)!=EOF)//scanf函数正常读取返回1,CTRL+Z时scanf会返回EOF
{
if (iq >= 140)
printf("Genius\n");
}
return 0;
}