https://www.nowcoder.com/practice/557cc54704bb4d56b73b62d1a5455331?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
据说智商140以上者称为天才,KiKi想知道他自己是不是天才,请帮他编程判断。输入一个整数表示一
个人的智商,如果大于等于140,则表明他是一个天才,输出“Genius”。
输入描述:
多组输入,每行输入包括一个整数表示的智商。
输出描述:
针对每行输入,输出“Genius”。
示例1
输入
160
输出
Genius
参考代码:
#include
int main()
{
int n = 0;
while (scanf("%d", &n) != EOF)
{
if (n >= 140)
printf("Genius");
}
return 0;
}
#include
int main()
{
int n = 0;
//这种写法是因为scanf读取失败返回EOF,EOF是-1,所以按位取反后的结果是0,0为假,可以让循环停止。
while (~scanf("%d", &n))
{
if (n >= 140)
printf("Genius");
}
return 0;
}
答案解析:
关于对组输入的题目,一定要处理好多组数据的输入问题,然后考虑循环如何结束。
方法1和方法2,给出了2种多组输入的方法。
https://www.nowcoder.com/practice/8312e497509a450f968d9a6a2381ce32?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi想知道他的考试成绩是否完美,请帮他判断。从键盘输入一个整数表示的成绩,编程判断成绩是否在90~100之间,如果是则输出“Perfect”。
输入描述:
多组输入,每行输入包括一个整数表示的成绩(90~100)。
输出描述:
针对每行输入,输出“Perfect”。
示例1
输入
98
输出
Perfect
参考代码:
#include
int main()
{
int score = 0;
while (scanf("%d", &score) != EOF)
{
if (score >= 90 && score <= 100)
printf("Perfect");
}
return 0;
}
答案解析:
1. 多组输入。
2. 数学中的 90<=score<=100 的写法,在C语言中直接写是有bug的。
https://www.nowcoder.com/practice/56513524333148b38945e1989bc7df4e?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi想知道他的考试分数是否通过,请帮他判断。从键盘任意输入一个整数表示的分数,编程判断该分
数是否在及格范围内,如果及格,即:分数大于等于60分,是输出“Pass”,否则,输出“Fail”。
输入描述:
多组输入,每行输入包括一个整数表示的分数(0~100)。
输出描述:
针对每行输入,输出“Pass”或“Fail”。
示例1
输入
94
输出
Pass
示例2
输入
44
输出
Fail
参考代码:
#include
int main()
{
int score = 0;
while (scanf("%d", &score) != EOF)
{
if (score >= 60)
printf("Pass\n");
else
printf("Fail\n");
}
return 0;
}
答案解析:
无。
https://www.nowcoder.com/practice/a8b018667e274af29b5f76a6673450fc?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi想知道一个整数的奇偶性,请帮他判断。从键盘任意输入一个整数(范围-2^31~2^31-1),编程判断它的奇偶性。
输入描述:
多组输入,每行输入包括一个整数。
输出描述:
针对每行输入,输出该数是奇数(Odd)还是偶数(Even)。
示例1
输入
4
7
输出
Even
Odd
参考代码:
#include
int main()
{
int num = 0;
while (scanf("%d", &num) != EOF)
{
if (num % 2 == 1)
printf("Odd\n");
else
printf("Even\n");
}
return 0;
}
答案解析:
无
https://www.nowcoder.com/practice/52c18a3b49a54fc98107fbdde1415f90?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi参加了语文、数学、外语的考试,请帮他判断三科中的最高分。从键盘任意输入三个整数表示的分数,编程判断其中的最高分。
输入描述:
多组输入,每行输入包括三个整数表示的分数(0~100),用空格分隔。
输出描述:
针对每行输入,输出为一行,即三个分数中的最高分。
示例1
输入
94 98 99
100 88 60
输出
99
100
参考代码:
#include
int main()
{
int i = 0;
int score[3] = { 0 };
while (scanf("%d %d %d", &score[0], &score[1], &score[2]) != EOF)
{
int max = 0;//每一组测试,max都恢复到0
int i = 0;
for (i = 0; i < 3; i++)
{
if (score[i] > max)
max = score[i];
}
printf("%d\n", max);
}
return 0;
}
答案解析:
1. 多组输入
2. 每组输入接受3个数字,求出最大值,因为成绩不能是负数,所以假设max期初是0.
https://www.nowcoder.com/practice/7eb4df4d52c44d309081509cf52ecbc4?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi开始学习英文字母,BoBo老师告诉他,有五个字母A(a), E(e), I(i), O(o),U(u)称为元音,其他所有字
母称为辅音,请帮他编写程序判断输入的字母是元音(Vowel)还是辅音(Consonant)。
输入描述:
多组输入,每行输入一个字母。
输出描述:
针对每组输入,输出为一行,如果输入字母是元音(包括大小写),输出“Vowel”,如果输入字母是非元音,
输出“Consonant”。
示例1
输入
A
b
输出
Vowel
Consonant
参考代码:
//方法1
#include
int main()
{
char ch = 0;
char arr[] = "AEIOUaeiou";
while ((ch = getchar()) != EOF)
{
int i = 0;
for (i = 0; i < 10; i++)
{
if (ch == arr[i])
{
printf("Vowel\n");
break;
}
}
if (i == 10)
printf("Consonant\n");
getchar();//去除每个字符后的\n
}
return 0;
}
//方法2
#include
int main()
{
char ch = 0;
char arr[] = "AEIOUaeiou";
//在%c的前面写一个空格会消化掉前面所有的空白字符,然后读取一个字符
while (scanf(" %c", &ch) != EOF)
{
int i = 0;
for (i = 0; i < 10; i++)
{
if (ch == arr[i])
{
printf("Vowel\n");
break;
}
}
if (i == 10)
printf("Consonant\n");
}
return 0;
}
//方法3
#include
int main()
{
char ch = 0;
char arr[] = "AEIOUaeiou";
//在%c的后边发给一个'\n',其实在输入时候就会消化掉这个\n字符
//不会为下次留下空白字符的隐患
while (scanf("%c\n", &ch) != EOF)
{
int i = 0;
for (i = 0; i < 10; i++)
{
if (ch == arr[i])
{
printf("Vowel\n");
break;
}
}
if (i == 10)
printf("Consonant\n");
}
return 0;
}
https://www.nowcoder.com/practice/91a588dd4cd244bfa616f17603ec123c?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi想判断输入的字符是不是字母,请帮他编程实现。
输入描述:
多组输入,每一行输入一个字符。
输出描述:
针对每组输入,输出单独占一行,判断输入字符是否为字母,输出内容详见输出样例。
示例1
输入
A
6
输出
A is an alphabet.
6 is not an alphabet.
参考代码:
#include
int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
{
//判断字母
//if((ch>='A'&& ch<='Z') || (ch>='a' && ch<='z'))
if (isalpha(ch))
printf("%c is an alphabet.\n", ch);
else
printf("%c is not an alphabet.\n", ch);
//清理掉\n
getchar();
}
return 0;
}
答案解析:
本题和BC46是一个道理的,三种方法均可使用。
https://www.nowcoder.com/practice/850ebd30a2a34cfc87199da3fc15786a?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi想完成字母大小写转换,有一个字符,判断它是否为大写字母,如果是,将它转换成小写字母;反之则转换为大写字母。
输入描述:
多组输入,每一行输入一个字母。
输出描述:
针对每组输入,输出单独占一行,输出字母的对应形式。
示例1
输入
a
A
Z
输出
A
a
z
参考代码:
#include
int main()
{
int ch = 0;
//多组输入
while ((ch = getchar()) != EOF)
{
if (islower(ch))
printf("%c\n", toupper(ch));
else
printf("%c\n", tolower(ch));
//处理'\n'
getchar();
}
return 0;
}
答案解析:
本地和BC46、BC47题一样。
https://www.nowcoder.com/practice/0b23793ae48a4e6cb7dfff042c959a04?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking
题目描述
KiKi最近学习了信号与系统课程,这门课里有一个非常有趣的函数,单位阶跃函数,其中一种定义方式为:
现在试求单位冲激函数在时域t上的值。
输入描述:
题目有多组输入数据,每一行输入一个t(-1000 输出描述: 输出函数的值并换行。 示例1 输出 1 参考代码: 答案解析: 无 https://www.nowcoder.com/practice/689ec1e742394e09b1059556fc167b65?tpId=107&rp=1&ru=%2Fta%2Fbeginner-programmers&qru=%2Fta%2Fbeginner-programmers%2Fquestion-ranking 题目描述 KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。 输入描述:
输入
11
0
-11
0.5
0#include
BC51-三角形判断