绝对零基础的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
这个就是用if写的数学题,先不写了。
模拟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 count = 0;for (int i = 0;i < 10;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));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[80] = { 0 };char* pstart = NULL, * pend = NULL;//dev不能用空指针的话就不用初始化了gets(str);int len = strlen(str);pstart = &str[0];pend = &str[len - 1];while (pstart <= pend){if (*pstart != *pend){break;}pstart++;pend--;}if (pstart < pend){printf("yes");}else{printf("no");}return 0;
}法二代码:
#include<stdio.h>
#include<string.h>
int main()
{char a[100], b[100];gets(a);int i = strlen(a);//计算的长度并不包含'\0'int tmp = i;for (i = 0;i < i;i++){b[i] = a[--tmp];}if (strcmp(a, b) == 0){printf("是回文数");}else{printf("不是回文数");}return 0;
}模拟8(组合数)
从3个红球,5个白球,6个黑球中任意取出8个作为一组。在每组中可以没有黑球,
但必须要有红球和白球。编程实现复合要求的组合数。
代码:
#include <stdio.h>
int main()
{int red, white, black, sum = 0;for (red = 1; red <= 3; red++){for (white = 1; white <= 5; white++){for (black = 0; black <= 6; black++){if (red + white + black == 8){printf("red:%d white:%d black:%d\n", red, white, black);sum = sum + 1;}}}}printf("sum = %d", sum);return 0;
}模拟9(合法密码)
编程实现判断用户在某购物网站注册时输入的密码是否合法,要求密码长度不能超过20,
且密码是混合字符,必须包含英文大写字母,英文小写字母和数字字符三种字符。
如果用户输入的注册密码复合要求,输出“yes ”否者输出 "no"
代码:
#include <stdio.h>
#include <string.h>
int main()
{char arr[50];gets(arr);int len = strlen(arr), lower = 0, upper = 0, digit = 0;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];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输出样例:3 5 7 11 13 17 19 (输出数据之间用空格间…...
注解开发定义bean
注解开发定义bean 使用Component定义bean在核心配置文件中通过组件扫描加载bean,需要指定扫描包的范围 当然也可以使用Component的衍生注解,可以更加形象的表示 纯注解的开发模式 使用java类来代替了以前的 配置文件,在java类中ÿ…...
剑指 Offer 19. 正则表达式匹配
摘要 剑指 Offer 19. 正则表达式匹配 请实现一个函数用来匹配包含. 和*的正则表达式。模式中的字符.表示任意一个字符,而*表示它前面的字符可以出现任意次(含0次)。在本题中,匹配是指字符串的所有字符匹配整个模式。例如&#x…...
CSS——学成在线案例
🍓个人主页:bit.. 🍒系列专栏:Linux(Ubuntu)入门必看 C语言刷题 数据结构与算法 HTML和CSS3 目录 1.案例准备工作 2.CSS属性书写顺序(重点) 3.页面布局整体思路 4.头部的制作编辑 5.banner制作…...
元数据的类型
元数据通常分为三种类型:业务元数据、技术元数据和操作元数据。这些类别使人们能够理解属于元数据总体框架下的信息范围,以及元数据的产生过程。也就是说,这些类别也可能导致混淆,特别是当人们对一组元数据属于哪个类别或应该由谁…...
LEAP模型的能源环境发展、碳排放建模预测及不确定性分析
LEAP(Long Range Energy Alternatives Planning System/ Low emission analysis platform,长期能源可替代规划模型)是一种自下而上的能源-环境核算工具,由斯德哥尔摩环境研究所和美国波士顿大学联合研发。该模型与情景分析法紧密结…...
C# Task详解
1、Task产生背景 Task出现之前,微软的多线程处理方式有:Thread→ThreadPool→委托的异步调用,虽然也可以基本业务需要的多线程场景,但它们在多个线程的等待处理方面、资源占用方面、线程延续和阻塞方面、线程的取消方面等都显得比…...
Blob分析+特征
Blob分析特征0 前言1 概念2 方法2.1 图像采集2.2 图像分割2.3 特征提取3 主要应用场景:0 前言 在缺陷检测领域,halcon通常有6种处理方法,包括Blob分析特征、Blob分析特征差分、频域空间域、光度立体法、特征训练、测量拟合,本篇博…...
4EVERLAND 的 IPFS Pinning 服务:4EVER Pin
我们很高兴地宣布 4EVERLAND Storage 的一个令人兴奋的补充,即 4EVER Pin。什么是 4EVER Pin?您可能已经知道星际文件系统或IPFS是一个分布式存储网络,来自世界各地的计算机组成节点共享数据。通常,在IPFS中获取一条数据时&#x…...
activiti整合springBoot其他操作
如果单纯使用activiti进行流程的自动控制,是可以实现的。但是通常我们都需要结合自定义的表,便于在流程执行中更加清晰的看到每一个流程实例节点的具体信息。关联自定义表与activiti表才能完成真正的业务 BusinessKey关联 // 定义businessKey Test pub…...
深度探索C++预编译头机制
深度详见预编译头,以vs编译器实现的预编译头管理为例 预编译头是为了节省庞大的编译时间,采取的一种方法;C标准并没有规定如何实现预编译头机制;因此其具体实现方式由编译器供应商自行决定。 下面就以VS中观测的结果为例进行说明…...
Leaflet基础入门教程(一)
leaflet是一个前端的轻量的gis框架,为什么说它轻量呢。因为相比于传统的“庞大的”GIS框架比如openlayers和mapbox,leaflet不仅代码体积小,而且API构成也极为简单。是GIS行业小白入门级别学习的最好的框架,没有之一。 那么话不多说我们首先来学习一下如何使用leaflet搭建一…...
《强化学习导论》之6.5 Q-Learning
Q-Learning:Off-Policy TD Control强化学习的早期突破之一是开发了一种称为Q学习的非策略TD控制算法(Watkins,1989)。其最简单的形式,定义为(6.8)在这种情况下,学习的动作-值函数Q直接近似于最优动作-值函数࿰…...
5年软测,女朋友跑了俩,2年外包感觉自己废了一半,怎么办?
17年毕业,校招毕业就进入一家软件公司,干了2年的点工,随后进入一家外包公司工作至今,安逸使人堕落不知进取,加之随着近年的环境不景气,谈了多年将要结婚的女朋友也因为我的心态和工资要跟我闹分手我想改变现…...
【JavaWeb】HTML常用标签
HTML标签结构 HTML语言主要都是由标签构成的。 标签名 在 <> 中 如<body> 标签大部分成对出现,代表开始和结束 如 <body>标签中的内容</body> 少部分单个出现,叫单标签 </br> 代表换行 标签中可以加属性,多个…...
python编程:查找某个文件夹下所有的文件,包括子文件加下的所有文件,读取指定类型的文件
目录 一、实现要求 二、代码实现 三、效果测试 一、实现要求 1、在电脑上有一个文件夹,该文件夹下面还有子文件夹,具体层级不清楚,需要实现将该文件夹下所有的文件路径读取出来; 2、在1的基础上,只需读取指定类型的文…...
测试外包干了5年,感觉自己已经废了····
前两天有读者想我资讯: 我是一名软件测试工程师,工作已经四年多快五年了。现在正在找工作,由于一直做的都是外包的项目。技术方面都不是很深入,现在找工作都是会问一些,测试框架,自动化测试,感…...
C++17 文件与目录操作 <filesystem>
目录 路径操作 目录遍历 文件检查和操作 总结 每次写C进行目录操作时,我一般都是调平台的SDK,尤其是win32 api 非常难记,于是查一下文档看看有没有和Python中os模块一样好用的库。 于是发现 filesystem,从来没用过࿰…...
Python 如何安装 MySQLdb ?
人生苦短 我用python Python 标准数据库接口为 Python DB-API, Python DB-API为开发人员提供了数据库应用编程接口。 Python 数据库接口支持非常多的数据库, 你可以选择适合你项目的数据库: GadFlymSQLMySQLPostgreSQLMicrosoft SQL Serve…...
总被程序员坑?你需要了解API接口
编辑导读:程序员是公司里的技术岗,也是产品经理最密切的合作伙伴。但是,程序员能看懂产品经理的工作,产品经理却不一定能明白程序员的工作,因此也常常被无良程序员坑。本文就从API接口的维度,浅析API的概念…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
