绝对零基础的C语言科班作业(期末模拟考试)(十道编程题)
编程题(共10题; 共100.0分)(给猛男妙妙屋更一篇模拟考试)
模拟1(输出m到n的素数)
从键盘输入两个整数[m,n], 输出m和n之间的所有素数。
输入样例:3,20
输出样例:3 5 7 11 13 17 19 (输出数据之间用空格间隔)
代码:
#include<stdio.h>
#include<math.h>
int isPrime(int r)
{if (r < 2){return 0;}for (int i = 2;i <= sqrt(r);i++){if (r % i == 0){return 0;}}return 1;
}
int main()
{int m = 0, n = 0;scanf("%d%d", &m, &n);for (int i = m;i <= n;i++){if (isPrime(i)){printf("%d ", i);}}return 0;
}模拟2(在数组找数字并排序)
从键盘输入10个整数存入数组中,从键盘输入一个整数,
判断从键盘输入的整数是否在数组中,如果找到了,输出该数所在的位置,
否者提示“not found”。同时按由小到大次序对这批数据进行排序,并输出。
输入要求:第一行输入10个整数,数据间使用空格间隔
第二行 输入一个待查找的整数
输出要求: 第一行输出是否找待查找的数据的信息
第二行输出排序后的数据,要求数据间用空格间隔
代码:
#include<stdio.h>
void bubble_sort(int arr[], int sz)//sz是传入数组大小,此题是10,也可以不加
{for (int i = 0;i < sz - 1;i++){int flag = 1;//优化(外面标记一下)(可以不写)for (int j = 0;j < sz - 1 - i;j++){if (arr[j] > arr[j + 1]){int tmp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = tmp;flag = 0;//如果内循环没有一次是要交换的,说明全部的数都排好了,此时flag为1,等下会break}}if (flag){break;}}
}
int main()
{int arr[10] = { 0 };for (int i = 0;i < 10;i++){scanf("%d", &arr[i]);}int n = 0;scanf("%d", &n);int flag = 0;for (int i = 0;i < 10;i++){if (arr[i] == n){printf("%d ", i);flag++;}}if (flag == 0){printf("not found");}printf("\n");int sz = sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz);//可以直接传入10for (int i = 0;i < 10;i++){printf("%d ", arr[i]);}return 0;
}模拟3(查找字符)
从键盘输入一个字符,在给定的字符串中寻找该输入字符,
若找到打印输出该字符,没有找到给出提示信息“not found”。
给定的字符串:“the people's republic of china”
输入样例:p
输出样例:p
输入样例:t
输出样例:not found
代码:
#include<stdio.h>
#include<string.h>
int main()
{char arr[50] = "the people's republic of china";char c = '0';scanf("%c", &c);for (int i = 0;i < strlen(arr);i++){if (arr[i] == c){printf("%c", c);return 0;}}printf("not found");return 0;
}模拟4(计算工资)
设某公司的业务员工资的计算方法为:工资=基本工资+提成。
其中,提成的计算方法为:当销售额在10000元以下时,只发基本工资1000元;
当销售额在10000元以上才可以拿提成。提成的比率为:
当销售额在20000元以下时,超出10000元的部分可按5% 提成;
当销售额在20000元以上50000元以下时,超出20000元的部分可按6% 提成;
当销售额在50000元以上100000元以下时,超出50000元的部分可按7% 提成;
当销售额在100000元以上时,超出100000元的部分可按8% 提成。
输入一个业务员的销售额,计算其应发的工资额。
输入提示信息:"Please input sale: \n"
输入格式:"%d"
输出格式:"%.3f\n"示例:
Please input sale : 23456
1707.360
代码:
#include <stdio.h>
int main()
{float sale = 0, wage = 0;printf("Please input sale: \n");scanf("%f", &sale);if (sale <= 10000)wage = 1000;if (sale > 10000 && sale <= 20000)wage = 1000 + (sale - 10000) * 0.05;if (sale > 20000 && sale <= 50000)wage = 1000 + 10000 * 0.05 + (sale - 20000) * 0.06;if (sale > 50000 && sale <= 100000)wage = 1000 + 10000 * 0.05 + 30000 * 0.06 + (sale - 50000) * 0.07;if (sale > 100000)wage = 1000 + 10000 * 0.05 + 30000 * 0.06 + 50000 * 0.07 + (sale - 100000) * 0.08;printf("%.3f\n", wage);return 0;
}模拟5(逆序整数)
编写程序,输入一个整数,将它逆序输出。要求定义并调用函数reverse(number),
它的功能是返回number的逆序数。例如reverse(12345)的返回值是54321.
代码:
#include <stdio.h>
int reverse(int x)
{int m = 0;int sum = 0;while (x != 0){m = x % 10;x = x / 10;sum = (sum * 10) + m;}return sum;
}
//数组逆序
void reverse2(int* p, int left, int right)
{while (left < right){int tmp = p[left];p[left] = p[right];p[right] = tmp;left++;right--;}
}
int main()
{int n = 0;scanf("%d", &n);printf("%d\n", reverse(n));return 0;
}模拟6(统计优秀率)
某班进行了大学计算机基础考试,
现要求的定义函数count帮助任课老师统计优秀率(90分以上为优秀)。
要求学生成绩使用数组来存储。
输入样例:78 90 87 65 45 78 23 94 67 77
输出样例:2
代码:
#include <stdio.h>
int count(int arr[], int sz)
{int count = 0;for (int i = 0;i < sz;i++){if (arr[i] >= 90){count++;}}return count;
}
int main()
{int arr[10] = { 0 };for (int i = 0;i < 10;i++){scanf("%d", &arr[i]);}printf("%d", count(arr, 10));return 0;
}模拟7(回文数)
”20211202“是一个特殊的日子,是完全对称日。
所谓完全对称日即正读和反读得到的字符串是相同的,
实质就是一个回文词。英文中有很多的回文词,回文词的拼法十分有趣,无论是从前往后拼读,
还是从后往前拼读,他们的拼法和词义都不变。例如:dad(爸爸),mum(妈妈),noon(中午),
eve(前夕),eye(眼睛),pop(流行),deed(行为),level(水平)等。
现在请你编程输入一个字符串,判断它是否是回文。
提示:
(1)设置两个指针pStart和pEnd,让pStart指向字符串首部,让pEnd指向字符串尾部。
或者设置两个循环变量i和j,i指向首字符,j指向结束符。
(2)利用循环从字符串两边对指针所指字符进行比较,当对应的两字符相等且两指针未超越对方时,
使指针pStart向前移动一个字符位置(加1),使指针pEnd向后移动一个字符位置(减1),
一旦发现两字符不等或两指针已互相超越(不可能是回文),则立即停止循环。
(3)根据退出循环时两指针的位置,判断字符串是否为回文。
输入样例:ABCCBA
输出样例:YES!
输入样例:student
输出样例:NO!
法一代码:
#include<stdio.h>
#include<string.h>
int main()
{char str[100] = { 0 };gets(str);char* pStart = str, * pEed = &str[strlen(str) - 1];while (pStart < pEed){if (*pStart != *pEed){break;}pStart++;pEed--;}if (pStart >= pEed){printf("yes");}else{printf("no");}return 0;
}法二代码:
#include<stdio.h>
#include<string.h>
int main()
{char arr[100] = { 0 }, arr_tmp[100] = { 0 };//把arr反过来拷贝gets(arr);int len = strlen(arr);int end = len - 1;for (int i = 0;i < len;i++){arr_tmp[i] = arr[end--];}if (strcmp(arr, arr_tmp) == 0){printf("yes");}else{printf("no");}return 0;
}模拟8(组合数)
从3个红球,5个白球,6个黑球中任意取出8个作为一组。在每组中可以没有黑球,
但必须要有红球和白球。编程实现复合要求的组合数。
代码:
#include <stdio.h>
int main()
{int sum = 0;for (int red = 1; red <= 3; red++){for (int white = 1; white <= 5; white++){for (int black = 0; black <= 6; black++)//可以没有黑球,从0开始{if (red + white + black == 8){printf("red:%d white:%d black:%d\n", red, white, black);sum++;}}}}printf("sum = %d", sum);return 0;
}模拟9(合法密码)
编程实现判断用户在某购物网站注册时输入的密码是否合法,要求密码长度不能超过20,
且密码是混合字符,必须包含英文大写字母,英文小写字母和数字字符三种字符。
如果用户输入的注册密码复合要求,输出“yes ”否者输出 "no"
代码:
#include <stdio.h>
#include <string.h>
int main()
{char arr[100];gets(arr);int lower = 0, upper = 0, digit = 0;int len = strlen(arr);if (len <= 20){for (int i = 0;i < len;i++){if (arr[i] >= 'a' && arr[i] <= 'z'){lower++;}if (arr[i] >= 'A' && arr[i] <= 'Z'){upper++;}if (arr[i] >= '0' && arr[i] <= '9'){digit++;}}}//如果不能是混合字符就加上k+upper+digit==iif (lower != 0 && upper != 0 && digit != 0){printf("yes");}else{printf("no");}return 0;
}模拟10(结构体求平均分)
应用结构体类型,编程输入4名学生的姓名和高等数学、
大学英语、模拟电路三门课程的成绩,输出平均分最高的学生的姓名。
输入样例:
zhangsan 80 90 100
lisi 95 85 98
wangwu 95 85 95
zhaoliu 100 80 88
输出样例:
lisi
代码:
#include<stdio.h>
struct student
{char name[20];float score[3];float aver;
};
int main()
{struct student s[4] = { 0 };for (int i = 0;i < 4;i++){scanf("%s%f%f%f", &s[i].name, &s[i].score[0], &s[i].score[1], &s[i].score[2]);s[i].aver = (s[i].score[0] + s[i].score[1] + s[i].score[2]) / 3;}float max = -1;int i = 0, tmp = 0;for (i = 0;i < 4;i++){if (s[i].aver > max){max = s[i].aver;tmp = i;}}printf("%s", s[tmp].name);return 0;
}
相关文章:
绝对零基础的C语言科班作业(期末模拟考试)(十道编程题)
编程题(共10题; 共100.0分)(给猛男妙妙屋更一篇模拟考试)模拟1(输出m到n的素数)从键盘输入两个整数[m,n], 输出m和n之间的所有素数。 输入样例:3,20输出样例:…...
按位与为零的三元组[掩码+异或的作用]
掩码异或的作用前言一、按位与为零的三元组二、统计分组1、map统计分组2、异或掩码总结参考资料前言 当a b 0时,我们能够很清楚的知道b是个什么值,b 0 - a -a,如果当a & b 0时,我们能够很清楚的知道b是什么值吗…...
C++基础篇(一)-- 简单入门
C 语言是在优化 C 语言的基础上为支持面向对象的程序设计而研制的一个通用目的的程序设计语言。在后来的持续研究中,C 增加了许多新概念,例如虚函数、重载、继承、标准模板库、异常处理、命名空间等。 C 语言的特点主要表现在两个方面:全面兼…...
前端整理 —— javascript 2
1. generator(生成器) 详细介绍 generator 介绍 generator 是 ES6 提供的一种异步编程解决方案,在语法上,可以把它理解为一个状态机,内部封装了多种状态。执行generator,会生成返回一个遍历器对象。返回的…...
Spring-注解注入
一、回顾XML注解 bean 配置 创建 bean public class Student { } 配置 xml bean <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSche…...
华为校招机试 - 攻城战(Java JS Python)
目录 题目描述 输入描述 输出描述 用例 题目解析 JavaScript算法源码 Java算法源码...
Docker入门
Docker一、何为DockerDocker是一个开源的应用容器引擎,基于GO语言并遵循从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后在发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使…...
时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序)
时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序) 目录 时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序)预测结果模型输出基本介绍完整程序参考资料预测结果 模型输出 layers = 具有以下层的 151 Layer 数组:...
【蒸滴C】C语言结构体入门?看这一篇就够了
目录 一、结构体的定义 二、结构的声明 例子 三、 结构成员的类型 结构体变量的定义和初始化 1.声明类型的同时定义变量p1 2.直接定义结构体变量p2 3.初始化:定义变量的同时赋初值。 4.结构体变量的定义放在结构体的声明之后 5.结构体嵌套初始化 6.结构体…...
第十三届蓝桥杯
这里写目录标题一、刷题统计(ceil函数返回的是等值于某最小整数的浮点值,不强制转换回int就wa,没错就连和int整数相加都wa二、修剪灌木(主要应看清楚会调转方向三、统计子矩阵(前缀和滑动窗口⭐)四、[积木画…...
消息队列mq
应用场景: 1、解耦 2、削峰填谷 3、异步处理 4、消息通讯 工作模式: 一个消息只能被消费一次(订阅模式除外),消费者接受到消息会回调业务逻辑,消费逻辑写在回调函数里面。 1、简单模式:一个生产…...
[学习笔记]黑马程序员Spark全套视频教程,4天spark3.2快速入门到精通,基于Python语言的spark教程
文章目录视频资料:一、Spark基础入门(环境搭建、入门概念)第二章:Spark环境搭建-Local2.1 课程服务器环境2.2 Local模式基本原理2.3 安装包下载2.4 Spark Local模式部署第三章:Spark环境搭建-StandAlone3.1 StandAlone…...
git push和 git pull的使用
git push与git pull是一对推送/拉取分支的git命令。git push 使用本地的对应分支来更新对应的远程分支。$ git push <远程主机名> <本地分支名>:<远程分支名>*注意: 命令中的本地分支是指将要被推送到远端的分支,而远程分支是指推送的目标分支&am…...
首发,pm3包,一个用于多组(3组)倾向评分匹配的R包
目前,本人写的第二个R包pm3包已经正式在CRAN上线,用于3组倾向评分匹配,只能3组不能多也不能少。 可以使用以下代码安装 install.packages("pm3")什么是倾向性评分匹配?倾向评分匹配(Propensity Score Match…...
基于Canal的数据同步
基于Canal的数据同步 一、 系统结构 该数据同步系统由Spring Boot和Canal共同组成。 Spring Boot 是一个流行的 Java Web 框架,而 Canal 则是阿里巴巴开源的 MySQL 数据库的数据变更监听框架。结合 Spring Boot 和 Canal,可以实现 MySQL 数据库的实时数…...
vuetify设置页面默认主题色
前言 最近工作中接到一个任务: 项目中分light和dark两种主题色a、b页面默认为dark其他页面默认为light 项目前端环境: vue2jsyarnvuexvuetifyelement ui 解决思路 routerjs中配置路径时进行默认主题设置 在左侧aside点击菜单时,进行主题切…...
【Python入门第二十三天】Python 继承
Python 继承 继承允许我们定义继承另一个类的所有方法和属性的类。 父类是继承的类,也称为基类。 子类是从另一个类继承的类,也称为派生类。 创建父类 任何类都可以是父类,因此语法与创建任何其他类相同: 实例 创建一个名为…...
C#中,读取一个或多个文件内容的方法
读取一个或多个文件内容的方法 在C#中,可以使用File.ReadAllLines方法一次读取多个文件中的所有行内容。例如,以下代码读取了两个文件中的所有行内容,然后将它们合并在一起: string[] file1Lines File.ReadAllLines("file1…...
1 基于神经辐射场(neural Radiance Fileds, Nerf)的三维重建- 简介
Nerf简介 Nerf(neural Radiance Fileds) 为2020年ICCV上提出的一个基于隐式表达的三维重建方法,使用2D的 Posed Imageds 来生成(表达)复杂的三维场景。现在越来越多的研究人员开始关注这个潜力巨大的领域,也…...
水果FLStudio21.0.0中文版全能数字音乐工作站DAW
FL Studio 21.0.0官方中文版重磅发布纯正简体中文支持,更快捷的音频剪辑及素材管理器,多样主题随心换!Mac版新增对苹果M2/1家族芯片原生支持。编曲、剪辑、录音、混音,20余年的技术积淀和实力研发,FL Studio 已经从电音…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...
使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
JDK 17 序列化是怎么回事
如何序列化?其实很简单,就是根据每个类型,用工厂类调用。逐个完成。 没什么漂亮的代码,只有有效、稳定的代码。 代码中调用toJson toJson 代码 mapper.writeValueAsString ObjectMapper DefaultSerializerProvider 一堆实…...
