MOOC中国大学慕课C语言期末编程试题

本文精选了五道C语言期末编程试题,包括星期推算、求和S、素数排序、组合数及三天打鱼两天晒网问题,旨在帮助学生理解和掌握C语言的基本编程技能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MOOC中国大学慕课C语言期末编程试题

  • 1
    星期推算。(20分)
    题目内容:假设今天是星期日,编写一个程序,求2018天后是星期几。
    输出样例:星期二

  • 2
    求和S。(20分)
    题目内容:求s=1+(1+2)+…+(1+2+3+…+n)的值,其中n由键盘输入。

    输入样例:3
    输出样例:10

    输入样例:6
    输出样例:56

    输入样例:0
    输出样例:Error!

  • 3
    素数排序。(20分)
    题目内容:输入10个正整数到a数组中,对a[10]数组中的素数升序排序。

    输入格式:在一行中输入10个用英文逗号,隔开的正整数。
    输出格式:在一行中输出升序的素数序列,每个数之间用英文逗号,隔开,末尾没有多余的空格。

    输入样例:9,5,1,6,4,8,7,2,9,11
    输出样例:2,5,7,11

    输入样例:9,12,1,6,4,8,14,18,9,21
    输出样例:Not found!

  • 4
    组合数。(20分)
    题目内容:本题要求编写程序,根据公式Cnm= 算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。

    输入格式:输入在一行中给出两个正整数m和n(m≤n),以英文,分隔。
    输出格式:输出组合数计算结果,题目保证结果在类型范围内。

    输入样例:2,7
    输出样例:21

  • 5
    三天打鱼两天晒网。(20分)
    题目内容:中国有句俗语:“三天打鱼两天晒网”,某人从1990年1月1日起开始“三天打鱼两天晒网”。问这个人在以后的某一天是在“打鱼”还是在“晒网”?

    输入样例:1990-1-3
    输出样例:他在打鱼

    输入样例:2018-11-11
    输出样例:他在晒网

以上就是C语言期末的编程题,大家可以先自行思考,稍后,我会将5道试题,我的想法发在博客上,欢迎大家关注,评论,指出其中的不足。

### 南京邮电大学C语言期末考试资料 对于南京邮电大学开设的C语言程,在准备期末考试时,学生可以利用多种资源来帮助自己更好地理解和掌握所学的知识。以下是有关该门程的一些复习建议以及可能涉及的内容。 #### 1. 考试范围概述 通常情况下,C语言程会覆盖基础语法结构、数据类型、控制流语句、数组与字符串处理、指针操作、函数定义及其调用方式等内容[^3]。此外,还可能会涉及到更复杂的主题比如文件I/O操作、内存管理技巧等知识点。 #### 2. 审视历年真题作为复习材料之一 通过研究往年的试题可以帮助考生了解命题趋势和重点难点所在。例如,《c语言期中考试试题》提供了多道题目供学员练习,这些题目不仅限于理论知识的选择判断题型,还包括实际编程能力测试部分[^1]。虽然这只是中期考核的一部分,但对于全面理解整个学期的学习目标仍然具有指导意义。 #### 3. 利用官方提供的学习平台获取更多信息 学校推出的MOOC平台上或许会有针对这门科目的专项辅导视频或者文档下载服务。像“高级程序语言设计(C++)”这样的系列教程里也包含了大量实用的例子说明如何构建面向对象的应用程序框架;尽管是以另一种编程语言为主导讲解,但其中很多概念同样适用于C语言环境下的开发工作[^2][^4]。 ```cpp // 示例代码片段展示了一个简单的矩阵加法实现方法 #include <iostream> using namespace std; class Matrix { private: int row; int col; double *data; // 动态分配的一维数组模拟二维表格存储形式 public: Matrix(int r=0, int c=0):row(r),col(c){ data=new double[r*c]; } ~Matrix(){ delete[] data; } void setElement(int i,int j,double value){ /*...*/ } double getElement(int i,int j)const{ /*...*/ return 0;} friend istream& operator>>(istream&, Matrix&); friend ostream& operator<<(ostream&, const Matrix&); bool canAdd(const Matrix&)const; Matrix add(const Matrix&)const; }; bool Matrix::canAdd(const Matrix &other) const{ return (this->row==other.row && this->col==other.col); } Matrix Matrix::add(const Matrix &b) const{ if(!this->canAdd(b)){ cout << "program terminated!"; exit(-1); } Matrix result(this->row,this->col); for(int i=0;i<result.row*result.col;++i) result.data[i]=this->data[i]+b.data[i]; return result; } ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值