第一部分:选择题
1、C++ L3(15分)
给定一个三位数 n,要求把十位上的数字赋值给整型变量x,可以使用下列哪种方法?( )
A. int x = n / 100;
B. int x = n % 100 / 10;
C. int x = n / 10;
D. int x = n % 10;
正确答案:B
2、C++ L3(15分)
已知整型变量 a 的初始值为4,执行完语句"a = a + a * a;"后,a的值为( )。
A. 20
B. 8
C. 32
D. 64
正确答案:A
3、C++ L3(20分)(替换内容)
执行以下代码,输出的结果是( )。
double a = 1.5;
int b = 3;
cout << (int)a * b;
A. 3
B. 4
C. 5
D. 6
正确答案:A
第二部分:编程题
4、C++ L3猫粮(50分)(数据范围说明)
题目名称:猫粮
题目描述:
小蓝养的一只宠物猫,每2天就要吃光一袋猫粮。小蓝在年底前团购了n袋猫粮,为了猫的饮食卫生,规定在一袋猫粮吃完后才会打开下一袋,即小蓝会在第一天打开一袋,第二天吃完后,第三天打开第二袋猫粮,以此类推。问第m天还剩下多少袋未打开的猫粮?
输入:
输入仅一行,包含两个正整数n,m,其中,n表示猫粮的袋数,m表示天数,且两个正整数之间用一个空格隔开。
输出:
输出仅一行,包含一个整数,表示剩下未打开的猫粮袋数。
题目数据保证还有剩下未打开的猫粮,并且输入输出数据都在int类型范围内。
输入样例:
10 4
输出样例:
8
参考代码:
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n, m, c;
cin >> n >> m;
c = ceil(1.0 * m / 2);
//c = m / 2;
cout << n - c;
return 0;
}
测试数据
|------|--------|---|-------|-----|
| 1.in | 10 4 | | 1.out | 8 |
| 2.in | 10 6 | | 2.out | 7 |
| 3.in | 109 78 | | 3.out | 70 |
| 4.in | 139 60 | | 4.out | 109 |
| 5.in | 127 61 | | 5.out | 96 |