内蒙古大学计算机学院四级,2018年内蒙古大学计算机学院专业课真题级答案

本文档展示了C++实现的一些基础算法和文件处理技巧。包括:计算两个整数间所有偶数之和,累加序列求和,迭代法求平方根,读取文件并统计字符类型,递归输出整数逆序,选择排序算法以及杨辉三角的系数计算。这些实例涵盖了数值计算、文件I/O和算法实现等核心概念。
摘要由CSDN通过智能技术生成

1. 输入俩个整数,求两个数之间所有偶数的和(含这两个数)

int n, m,mid;

int result = 0;

cin >> m >> n;

if (m > n) { mid = m; m = n; n = mid; }

for (int i = m; i <= n; i++)

{

if (i % 2 == 0) result += i;

}

cout << result << endl;

2、1+2+2+3+3+3+…+n+n+…+n求和

int n;

int result=0;

cin >> n;

for (int i = 1; i <= n; i++)

{

for (int j = 1; j <= i; j++)

{

result += i;

}

}

cout << result;

3、迭代法求平方根,求平方根的迭代公式为: a[n+1]=1/2(a[n]+X/a[n]) 要求前后两次求出的得差的绝对值少于0.00001。`

float x1, x2, a;

cin >> a;

x1 = 1; //赋个初值

x2 = a;

while (fabs(x1 - x2) >= 0.000001) //迭代过程

{

x1 = x2;

x2 = (x1 + a / x1) / 2;

}

cout << x1 << endl;

`## 4、把文件里面的信息读入 然后80个字符是一行 统计行数 小写字母 大写字母 数字的个数

ifstream in_stream("home/1.txt");

ofstream out_stream;

string str;

int line_num=0;

int B_num=0;

int S_num=0;

int D_num = 0;

if (in_stream.is_open())

{

while (getline(in_stream, str)) //按行读取

{

line_num++;

for (int i = 0; i= 'A'&&str[i] <= 'Z')

B_num++;

if (str[i] >= 'a'&&str[i] <= 'z')

S_num++;

if (str[i] >= '0'&&str[i] <= '9')

D_num++;

}

}

}

in_stream.close();

cout << line_num << " " << B_num << " " << S_num << " " << D_num << endl;

5、输入一个整数,用递归获取每一位上的数字,并且输出。比如:输入123,输出3 2 1

void get_Num(int n)

{

if (n == 0) return;

else {

int yu;

yu = n % 10;

cout << yu< get_Num(n / 10);

}

}

int main()

{

int n;

cin >> n;

get_Num(n);

system("pause");

}

6、考选择排序

void selectSort(int a[], int n)

{

int i, j;

int index = 0;

for (i = 1; i < n; i++) //执行第i遍扫描操作

{

index = i;

for (j = i+1; j <=n; j++)

{

if (a[j] < a[index]) index = j;

}

if (i!= index) { int mid = a[i]; a[i] = a[index]; a[index] = mid; }

}

}

int main()

{

int a[100];

int n;

cin >> n;

for (int i = 1; i <= n; i++)

cin >> a[i];

selectSort(a, n);

for (int i = 1; i <= n; i++)

cout << a[i];

system("pause");

}

7、是考杨辉三角的 (a+b)n次方方程的展开后的各项系数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值