沈阳航空航天大学 课后练习-选择结构(1)
目录
- 判断一个整数能否被3,7整除
- 偶数加法运算
- 比较三个数的大小,并计算三个数的和、积和平均值
- 判断水仙花数
- 判断一个整数的正负
- 输入两个整数,输出其中的最大值
- 输出休息或者上班
- 小学生评模范生
1.判断一个整数能否被3,7整除
【问题描述】编一个程序,输入一个整数 n,判断它能否被3,7整除;若能同时被3,7整除则输出 n is divisible by 3 and 7;能被其中一个数整除输出 n is divisible by 3 or 7;不能被3,7整除输出 n is not divisible by 3 or 7。
【输入形式】输入正整数 n
【输出形式】 输出提示信息。
【样例输入】2
【样例输出】2 is not divisible by 3 or 7
【样例输入】7
【样例输出】7 is divisible by 3 or 7
【样例输入】105
【样例输出】105 is divisible by 3 and 7
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
if (n%3 == 0&&n%7== 0)
{
printf("%d is divisible by 3 and 7", n);
}
else if (n%3==0 || n%7==0)
{
printf("% d is divisible by 3 or 7", n);
}
else
{
printf("%d is not divisible by 3 or 7", n);
}
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
2.偶数加法运算
【问题描述】输入两个正整数X和Y,对X和Y进行判断,若都为奇数,则输出提示 X Y are odd;若只有X为奇数,则输出提示 X is odd;若只有Y为奇数,则输出提示 Y is odd;若都为偶数,则对两个数求和。
【输入形式】输入两个正整数。
【输出形式】输出计算结果或者提示。
【样例输入】11 37
【样例输出】11 37 are odd
【样例输入】6 31
【样例输出】31 is odd
【样例输入】2000 16
【样例输出】2016
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int X,Y;
scanf("%d%d", &X,&Y);
if (X % 2 == 0 && Y % 2 == 0)
printf("%d", X + Y);
else if (X % 2 == 1 && Y % 2 == 0)
printf("%d is odd",X);
else if (X % 2 == 0 && Y % 2 == 1)
printf("%d is odd",Y);
else if (X % 2 == 1 && Y % 2 == 1)
printf("%d %d are odd",X,Y);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
3.比较三个数的大小,并计算三个数的和、积和平均值
【问题描述】编一个程序,从键盘中输入三个整数 a, b, c;比较三个数的大小,然后输出其中最大的数、最小的数、三个数的和、积和平均值。
【输入形式】输入三个整数 a b c
【输出形式】 输出最大数,最小数,三个数的和,三个数的积,平均值。
【样例输入】1 4 2
【样例输出】4 1 7 8 2.33
【样例说明】平均值保留小数点后2位。
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a, b, c;
scanf("%d%d%d", &a,&b,&c);
if (a>=b&&a>=c)
printf("%d ",a);
else if (b>=c&&b>=a)
printf("%d ",b);
else
printf("%d ",c);
if (a <= b && a <= c)
printf("%d ", a);
else if (b <= c && b <= a)
printf("%d ", b);
else
printf("%d ", c);
printf("%d ", a + b + c);
printf("%d ", a * b * c);
printf("%.2f ", (a + b + c) / 3.0);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
4.判断水仙花数
【问题描述】判断一个三位正整数是否是水仙花数。水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,例如153:
【输入形式】输入一个三位正整数 n
【输出形式】输出 n is narcissistic number 或 n is not narcissistic number
【样例输入】153
【样例输出】153 is narcissistic number
【样例输入】100
【样例输出】100 is not narcissistic number
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a, b, c, n,m;
scanf("%d", &m);
a = m / 100;
n = m / 10;
b = n % 10;
c = m % 10;
if (m == a * a * a + b * b * b + c * c * c)
printf("%d is narcissistic number",m);
else
printf("%d is not narcissistic number",m);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
5.判断一个整数的正负
【问题描述】判断一个整数的正负。输入1个整数。如果输入的为正,则输出1;如果输入的为负则输出-1;如果输入的为0,则输出0。
【输入形式】1个整数
【输出形式】1个整数
【样例输入】-5
【样例输出】-1
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a, b;
scanf("%d", &a);
if (a < 0)
b = -1;
else if (a == 0)
b = 0;
else
b = 1;
printf("%d", b);
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
6.输入两个整数,输出其中的最大值
【问题描述】输入两个整数,输出其中的最大值。
【输入形式】2个整数(空格分隔)
【输出形式】1个整数
【样例输入】5 6
【样例输出】最大值是6
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a, b, max;
scanf("%d%d", &a, &b);
if (a > b)
max = a;
else
max = b;
printf("最大值是%d", max);
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
7.输出休息或者上班
【问题描述】用户输入一个介于 [0,100] 区间的任意整数a后,程序将a转换为一个介于 [1,7] 区间的整数b。如果b是6或者是7,则打印“休息”;否则打印“上班”。
【输入形式】1个整数
【输出形式】1个字符串
【样例输入】0
【样例输出】上班
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main() {
int a, b;
printf("输入介于[0,100]区间的任意整数:");
scanf("%d", &a);
if (a >= 0 && a <= 100)
{
b = (a % 7) + 1;
if (b == 6 || b == 7)
printf("休息\n");
else
printf("上班\n");
}
else printf("输入的整数必须在 0-100 之间\n");
return 0;
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力
8.小学生评模范生
【问题描述】小学生根据数学和语文成绩评模范生。模范生的条件是:平均成绩不低于95分,且单科成绩不低于90分。
【输入形式】2个整数(用空格分隔)
【样例输入】89 100
【样例输出】平均成绩不足。
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int math, eng;
float aver;
printf("输入2门课成绩:");
scanf("%d %d", &math, &eng);
aver = (math + eng) / 2.0;
if (aver < 95)
printf("平均成绩不足。");
else if (math < 90||eng < 90)
printf("单科成绩不足。");
else
printf("是模范生。");
}
//SAU-计科2304-NineSense
//仅供参考 学习还需自己努力