问题标题: 编程题目征集6

0
0

0
已采纳
阿巴
阿巴
资深守护
资深守护
一、单选题(25分,每题5分)
一、单选题
1、
考试中的文件操作是指( )

A:
修改一个文件

B:
删除文件

C:
从文件输入,往文件输出

第1题: ( 
)
2、
文件操作的头文件是( )

A:
<cstdlib>

B:
<iostream>

C:
<cstring>

D:
<cstdio>

第2题: ( 
)
3、
文件操作中打开输入文件的代码是( )

A:
freopen()

B:
fropen()

C:
fopen()

D:
reopen()

第3题: ( 
)
4、
文件操作中关闭文件的代码是( )

A:
freclose()

B:
frclose()

C:
fclose()

D:
reclose()

第4题: ( 
)
5、
存储数据尽量使用整型而不是实型的原因是( )

A:
整型能表示的数据范围更大

B:
实型不能存储非常精确的小数

C:
整型比实型的应用范围更广

D:
整型也能存储小数

第5题: ( 
)
二、判断题(15分,每题5分)
二、判断题
1、
freopen("rec.in","w",stdin);这句文件操作是错的。

第1题: 对 错
2、
fclose("rec.in");这句话是对的。

第2题: 对 错
3、
通过(int)a;可以实现对小数a向上取整。

第3题: 对 错
三、填空题(10分,每题5分)
三、填空题
1、
将实型变量a四舍五入保留到整数部分的代码是(____ )(a+____);

第1题:
1: 
2: 
四、代码补全(50分,每题5分)
四、代码补全
1、
短信计费(message)
用手机发短信,一般在不同运营商之间,一条短信资费为0.1元,但限定每条短信的内容在70个字以内(包括70个字)。如果你所发送的一条短信超过了70个字,则大多数手机会按照每70个字一条短信的限制把它分割成多条短信发送。假设已经知道你当月所发送的每条短信的字数,试统计一下你当月短信的总费用。

#include<iostream>
#include<cstdio>
using namespace std;
int n,t,cnt;
int main(){ 
    ____(1)____("____(2)____","____(3)____",stdin);
    ____同(1)____("____(4)____","____(5)____",stdout);
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>t;
        if(____(6)____==0) cnt+=t/70;
        else cnt+=t/70+____(7)____;
    }
    printf("%.1f",cnt*0.1);
    ____(8)____(____(9)____);//关闭输入文件
    ____同(8)____(____(10)____);//关闭输出文件
    return 0;
} 
第1题:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 

 

0
0
0
朱小川
朱小川
缔造者
缔造者

请问A的ASCII码是多少

 

——————

0
被禁言 张恩昊
张恩昊
资深天翼
资深天翼

一、单选题(30分,每题10分)

一、单选题

1、

小写字母的ASCII码比它所对应的大写字母的ASCII码

A:

大23

B:

小23

C:

大32

D:

小32

第1题: ( )

2、

cout << A + 32;
这个代码的运行结果是

A:

a

B:

65

C:

97

D:

编译错误

第2题: ( )

3、

cout << 'E' + 32;这个代码的运行结果是

A:

e

B:

69

C:

101

D:

编译错误

第3题: ( )

二、填空题(20分,每题10分)

二、填空题

1、

cout << '0'*1;的运行结果是________

第1题:

1: 

2、

cout << '1'+0; 的运行结果是______

第2题:

1: 

三、代码补全(50分,每题10分)

三、代码补全

1、

输入一个小写字母转化成相应的大写字母,

char a;
cin >> a;
cout << ____________;

第1题:
1. ()

A . (char)(a+32)

B . a+32

C . (char)(a-32)

D . a-32

2、

输入一个大写字母转化成相应的小写字母,

char a;
cin >> a;
cout << ___________;

第2题:
1. ()

A . (char)(a+32)

B . a+32

C . (char)(a-32)

D . a-32

3、

将ASCII码111,转化成相应的字符,

int a = 111;
cout << __________;

第3题:
1. ()

A . char(a)

B . char a

C . char(a+111)

D . int(a)

4、

输出 ‘F’ 的ASCII码,

cout <<  __________;

第4题:
1. ()

A . F

B . 'F'

C . char('F')

D . int('F')

5、

下列代码的运行结果为__________
cout << 'a' + 0;

第5题:

1: 

0
阿巴
阿巴
资深守护
资深守护
一、判断题
1、
在搬砖头一题题中,为了获取最多的工资,一定要搬工资最多的那块石头

第1题: 对 错
2、
在体验积分值一题中,为获取最大的积分值,思路就是选出间隔的积分值,累加后进行比较。

第2题: 对 错
二、完形填空(80分,每题10分)
二、完形填空
1、
题目描述

酷町猫暑假找到了一份不错的暑假工,去工地上搬砖。已知酷町猫的推车的容积为m,现在他的面前摆了n个砖头。第i个砖头的体积为vi,搬第i个砖头工头会给他发wi元。现在试求出酷町猫一次最多能获得多少钱。

输入描述

第一行有两个整数m(1<=m<=1000)和n(1<=n<=100),用一个空格隔开,m代表推车容积,n代表砖头数量。接下来的n行每行包括两个在1到100之间(包括1和100)的整数,分别表示砖头的体积和获得的工钱。

输出描述

#include<iostream>
#include<cstring>
using namespace std;
int n,m;
int v[__(1)__],w[__(1)__];
int f[__(1)__][__(2)__];
int dfs(int n,int m){
    if(f[n][m]!=-1) return f[n][m];
    int ans=0;
    if(n==0) ans=0;
    else{
        ans=__(3)__;
        if(__(4)__)
            ans=max(ans,__(5)__);
    }
    return f[n][m]=ans;
}
int main(){
    memset(f,__(6)__,sizeof(f));
    cin>>m>>n;
    for(int i=1;i<=__(7)__;i++){
        cin>>v[i]>>w[i];
    }
    cout<<dfs(__(8)__);
    return 0;
}
第1题:
1. (
)
A . 105

B . 100

C . 1005

D . 1000

2. (
)
A . 105

B . 100

C . 1000

D . 1005

3. (
)
A . dfs(n-1,m-v[n])

B . dfs(n,m)

C . dfs(n-1,m-v[m])

D . dfs(n-1,m)

4. (
)
A . v[n]<=m

B . v[m]<=n

C . v[n]>=m

D . v[m]>=n

5. (
)
A . dfs(n-1,m-v[m])+w[n]

B . dfs(n-1,m-v[m]+w[m])

C . dfs(n-1,m-v[n])+w[n]

D . dfs(n-1,m-v[m])+w[n]

6. (
)
A . -1

B . 0

C . 1

D . 0x3f

7. (
)
A . n

B . m

C . T

D . M

8. (
)
A . n,m

B . N,M

C . m,n

D . M,T

 

0
阿巴
阿巴
资深守护
资深守护
一、单选题(30分,每题10分)
一、单选题
1、
下面哪个数不是完全平方数()?

A:
1

B:
3

C:
9

D:
81

第1题: ( 
)
2、
将5拆分为恰好两个正整数的和的形式,有多少种方案?(不能重复)

A:
1

B:
2

C:
3

D:
4

第2题: ( 
)
3、
我们如何保证拆数的方案数不重复?

A:
保证当前拆的数字和上一次不相等

B:
保证当前拆的数字大于等于前一次拆出的数字

第3题: ( 
)
二、代码补全(70分,每题10分)
二、代码补全
1、
题目描述 Description
输入一个整数n, 求将该数字拆分为4个平方数的方案数,方案不能重复。

平方数:是其他数的平方的数,例如1,4,9,16都是平方数

输入描述 Input Description
输入一个正整数n (500<=n<=1000)

输出描述 Output Description
输出将n拆成4个平方数的方案数

代码补全
#include<iostream>
using namespace std;
int N,a[35] = {0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841, 900, 961};
int f(int n,int t,int x)
{
    if(t==0)
    {
        if(n==0)
            return ____1____;
        return ____2____;
    }
    int ans=0;
    for(int i=x;i<=31&&____3____<=n;i++)
    {
        ans+=f(____4____,t-1,____5____);
    }
    return ans;
}
int main()
{
    cin>>N;
    cout<<f(N,____6____,____7____);
    return 0;
}

 

0
阿巴
阿巴
资深守护
资深守护
1、
以下排序算法中速度最快的是( )。

A:
选择排序

B:
冒泡排序

C:
插入排序

D:
快速排序

第1题: ( 
)
2、
快速排序运用了以下哪种算法思想?

A:
枚举

B:
贪心

C:
分治

D:
模拟

第2题: ( 
)
二、填空题(20分,每题10分)
二、填空题
1、
选择排序和快速排序是________(稳定/不稳定)的排序算法。冒泡排序和插入排序是________(稳定/不稳定)的排序算法。(对于序列中相等的元素,如果排序之后,这些元素相对的位置不变,则算法是稳定的)

第1题:
1: 
2: 
三、代码补全(60分,每题6分)
三、代码补全
1、
输入正整数n(n<100000),输入n个整数,请你将这n个数按照从小到大的顺序输出。

#include<iostream>
using namespace std;
int n,a[100005];
bool cmp(int m,int n){
    return ___(1)___;
}
void qsort(int a[],int l,int r){
    int i=___(2)___,j=___(3)___,mid=a[___(4)___];
    while(___(5)___){
        while(cmp(___(6)___)) i++;
        while(cmp(____(7)___)) j--;
        if(i<=j){
            swap(a[i],a[j]);
            i++;
            j--;
        }
    }
    if(l<j) qsort(___(8)___);
    if(i<r) qsort(___(9)___);
}
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    qsort(___(10)___);
    for(int i=1;i<=n;i++){
        cout<<a[i]<<" ";
    } 
    return 0;
}
第1题:
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 

 

0
我要回答