当前位置: 首页 > news >正文

C语言机试编程题

编写版本:vc++2022

1.求最大/小值

#include<stdio.h>
int main(){int a[50],n;int max, min;printf("请输入您要输入几个数");scanf_s("%d", &n);printf("请输入您要比较的%d个数\n",n);for (int i = 0; i<n; i++) {scanf_s("%d", &a[i]);}max = min = a[0];for (int i = 0; i < n; i++) {if (a[i] > max) max = a[i];if (a[i] < min) min = a[i];}printf("max=%d,min=%d", max, min);return 0;
}

2.求一个三位数abc,使a的阶乘+b的阶乘+c的阶乘=abc

#include<stdio.h>
//factorial 阶乘
int jiecheng(int n) {int m=1;while (n != 0) {m *= n;n--;}return m;
}
int main() {int a, b, c;for (int abc = 100; abc <= 999; abc++) {a = abc / 100;b = abc / 10 % 10;c = abc % 10;if (abc == jiecheng(a) + jiecheng(b) + jiecheng(c))printf("%d\n", abc);}return 0;
}

3.求2/1,3/2,5/3,8/5,13/8,21/13,的前20项和

#include<stdio.h>
int main() {float sum = 2;int i = 1, j = 2;float k;for (int num = 1; num < 20; num++) {k = i + j;i = j;sum += k / i;j = k;}printf("%0.2f", sum);return 0;
}

4.求阶乘

#include<stdio.h>
int main() {int N;int jiecheng=1;scanf_s("%d", &N);while (N != 0) {jiecheng *= N;N--;}printf("%d\n", jiecheng);return 0;
}

5.求10-1000之间所有数字之和为5的整数的个数

#include<stdio.h>
int main() {int count = 0;for (int i = 10; i <= 99; i++) {//两位数if (i/10+i%10== 5)count++;}for (int i = 100; i <= 999; i++) {//三位数if ((i/100)+(i/10%10)+(i%10)== 5)count++;}printf("%d\n", count);return 0;
}

6.输入字符串打印除小写,元音,字母之外的。用数组

#include<stdio.h>
int main() {char a[50];scanf_s("%s", a, 50);for (int i = 0; a[i] != '\0'; i++)if (a[i] != 'a' && a[i] != 'e' && a[i] != 'i' && a[i] != 'o' && a[i] != 'u')printf("%c", a[i]);return 0;
}

scanf_s输入字符串时,需要添加长度防止溢出

7.计算输入的10个整数中的,偶数的和,偶数平均值(小数表示)

#include<stdio.h>
int main() {int a[10];int sum=0;double avg;for (int i = 0; i < 10; i++) {scanf_s("%d", &a[i]);if (a[i] % 2 == 0) sum += a[i];}avg = sum / 10.0;printf("偶数的和%d,偶数的平均值%0.2f", sum, avg);return 0;
}

8.循环语句求a+aa+aaa+aaaa……n个a,n和a由键盘输入

#include<stdio.h>
#include<math.h>
int main() {int a, n,m;int sum = 0;scanf_s("%d %d", &a, &n);m = a;for (int i = 1; i <= n; i++) {sum += m;m += a * pow(10, i);}printf("%d", sum);return 0;
}

9.1!+2!+3!+4!……

#include<stdio.h>
int main() {int sum = 0, n,m=1;scanf_s("%d", &n);for (int i = 1; i <= n; i++) {m *= i;sum += m;}printf("%d", sum);return 0;
}

10.求sum=1-1/3+1/5-1/7+   +1/n(1/n<0.0001)

#include<stdio.h>
int main() {float sum = 0;int k=1;for (int i = 1; (1.0 / i) >= 0.0001; i += 2) {sum += (1.0 / i) * k;k = -k;}printf("%0.2f", sum);return 0;
}

11.输入正数判断是否为素数

#include<stdio.h>
int main() {int i,n;scanf_s("%d", &n);//素数:=质数,除了1和它本身之外不能被其他数整除。否则称为合数(1既不是质数也不是合数)if (n == 1) printf("%d不是素数", n);else if (n == 2) printf("%d是素数", n);else {for (i = 2; i < n; i++) {if (n % i == 0) {printf("%d不是素数", n);break;}}if(i>=n) printf("%d是素数", n);}return 0;
}

12.编写一个计算器,可以计算+-*/

#include<stdio.h>
int main() {float a, b;char ch;scanf_s("%f", &a);ch = getchar();scanf_s("%f", &b);switch (ch) {case '+':printf("=%0.2f", a + b); break;case '-':printf("=%0.2f", a - b); break;case '*':printf("=%0.2f", a * b); break;case '/':printf("=%0.2f", a / b); break;}return 0;
}

13.求m,n的最小公倍数

#include<stdio.h>
int main() {//lcm:lowest common multiple 最小公倍数int m, n,min;scanf_s("%d %d", &m, &n);if (m < n) min = m;else min = n;for(int i=min;i<=n*m;i++)if (i % m == 0 && i % n == 0) {printf("最小公倍数:%d", i);break;}return 0;
}

14.对10个数排序

#include<stdio.h>
int quick_one_pass(int a[], int low, int high) {int mid = a[low];while (low < high) {while (low < high && a[high] >= mid) --high;a[low] = a[high];while (low < high && a[low] <= mid) ++low;a[high] = a[low];}a[low] = mid;return low;
}
void quicksort(int a[], int low, int high) {int k;if (low < high) {k = quick_one_pass(a, low, high);quicksort(a, low, k - 1);quicksort(a, k + 1, high);}
}
int main() {//快速排序int a[10] = { 2,6,4,8,1,9,3,5,7,4 };quicksort(a, 0, 9);for (int i = 0; i < 10; i++)printf("%d ", a[i]);return 0;
}

15.36块砖,男人一次可以搬4块,女人:3块,两个小孩:1块。问男,女,小孩各多少人可以一次搬完

#include<stdio.h>
int main() {int man, woman, kid;for (man = 0; man <= 9; man++)for (woman = 0; woman <= 12; woman++)for (kid = 0; kid <= 72; kid++)if (4 * man + 3 * woman + 0.5 * kid == 36)printf("%d,%d,%d\n", man, woman, kid);return 0;
}

16.输入一个字符串,将其正序反序输出

#include<stdio.h>
#include<string.h>
int main() {char array[50];int n=0;//n是数组的长度scanf_s("%s", array, 50);n = strlen(array);for (int i = 0; i < n; i++)printf("%c", array[i]);printf("\n");for(int i=n-1;i>=0;i--)printf("%c", array[i]);return 0;
}

计算字符数组的长度:

#include<string.h>

strlen(array);

17.求一个整数在存储单元中,从右端开始第4到第7位的值

#include<stdio.h>
int main() {unsigned a, b, c;scanf_s("%o", &a);b = a >> 4;//右移四位c = b & 15;//和15按位与,15的二进制编码为1111printf("%o,%d\n%o,%d\n", a, a, c,c);return 0;
}

18.楼梯一共有n级,一次爬1级或2级,有几种不同的路径

#include<stdio.h>
int ClimbStairs(int n) {if (n == 0) return 1;else if (n == 1) return 1;else return ClimbStairs(n - 1) + ClimbStairs(n - 2);
}
int main() {int n;scanf_s("%d", &n);printf("%d", ClimbStairs(n));return 0;
}

19.十六进制转换成十进制

#include<stdio.h>
#include<string.h>
#include<math.h>
int f(char* a);//声明
int main() {char a[30];int n=0,ten=0;gets(a);printf("%d", f(a));return 0;
}
int f(char* a) {int i, c, sum = 0, n;c = strlen(a);for (i = 0; i < c; i++) {if (a[i] >= 'A' && a[i] <= 'Z')a[i] -= 55;if (a[i] >= '0' && a[i] <= '9')a[i] -= '0';}n = c - 1;for (i = 0; i <= c; i++) {sum = sum + a[i] * pow(16, n);n--;}return sum;
}

20.创建链表,头/尾插法插入数据

#include<stdio.h>
#include<stdlib.h>struct Node {int data;struct Node* next;
};//头插法创建链表
struct Node* createList(int arr[], int n) {struct Node* head = NULL;//初始化头节点为nullfor (int i = 0; i < n; i++) {//创建新结点struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));newNode->data = arr[i];newNode->next = head;head = newNode;}return head;
}//尾插法创建链表
struct Node* createList_2(int arr[], int n) {struct Node* head = NULL;struct Node* tail = NULL;for (int i = 0; i < n; i++) {struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));newNode->data = arr[i];newNode->next = NULL;if (head == NULL) {head = newNode;tail = newNode;}else {tail->next = newNode;tail = newNode;}}return head;
}//打印链表
void printList(struct Node* head) {struct Node* temp = head;while (temp != NULL) {printf("%d ->", temp->data);temp = temp->next;}printf("NULL\n");
}int main() {int arr[] = { 1,2,3,4,5 };int n = sizeof(arr) / sizeof(arr[0]);//数组长度//头插法创建链表struct Node* head = createList(arr, n);//打印链表printList(head);//尾插法创建链表struct Node* head_2 = createList_2(arr, n);//打印链表printList(head_2);return 0;
}

21.删除链表中的指定数据

相关文章:

C语言机试编程题

编写版本&#xff1a;vc2022 1.求最大/小值 #include<stdio.h> int main(){int a[50],n;int max, min;printf("请输入您要输入几个数");scanf_s("%d", &n);printf("请输入您要比较的%d个数\n",n);for (int i 0; i<n; i) {scanf_…...

threeJs+vue 轻松切换几何体贴图

嗨&#xff0c;我是小路。今天主要和大家分享的主题是“threeJsvue 轻松切换几何体贴图”。 想象一下&#xff0c;手头上正好有个在线3D家具商店&#xff0c;用户不仅可以看到产品的静态图片&#xff0c;还能实时更换沙发的颜色或材质&#xff0c;获得真实的购物体验。…...

Android ObjectBox数据库使用与集成指南

ObjectBox其核心特点ObjectBox与 SQLite 和 Realm 的对比Android集成ObjectBox创建ObjectBox实体对象创建ObjectBox操作管理类OBManager在Application初始化ObjectBox插入或更新数据查询数据统计数据分页数据查询删除数据总结今天分享一套Android另一个数据库ObjectBox。Object…...

【HarmonyOS Next】地图使用详解(一)

背景 这系列文章主要讲解鸿蒙地图的使用&#xff0c;当前可以免费使用&#xff0c;并提供了丰富的SDK给开发者去自定义控件开发。目前可以实现个性化显示地图、位置搜索和路径规划等功能&#xff0c;轻松完成地图构建工作。需要注意的是&#xff0c;现在测试只能使用实体手机去…...

seacmsv9注入管理员账号密码+orderby+limi

1&#xff1a;mysql默认存储引擎innoDB携带的表 1&#xff0c;mysql.innodb_table_stats 2,mysql.innodb_index_stats SELECT table_name FROM mysql.innodb_table_stats WHERE database_name DATABASE(); 2&#xff1a; 关键字做处理 HEX编码:0x696E666F726D6174696F6E5F7…...

C#与AI的交互(以DeepSeek为例)

C#与ai的交互 与AI的交互使用的Http请求的方式&#xff0c;通过发送请求&#xff0c;服务器响应ai生成的文本 下面是完整的代码&#xff0c;我这里使用的是Ollama本地部署的deepseek&#xff0c;在联网调用api时&#xff0c;则url会有不同 public class OllamaRequester {[Se…...

面试八股文--数据库基础知识总结(2) MySQL

本文介绍关于MySQL的相关面试知识 一、关系型数据库 1、定义 关系型数据库&#xff08;Relational Database&#xff09;是一种基于关系模型的数据库管理系统&#xff08;DBMS&#xff09;&#xff0c;它将数据存储在表格&#xff08;表&#xff09;中&#xff0c;并通过表格…...

Failed to start The PHP FastCGI Process Manager.

报错如下&#xff1a; Job for php-fpm.service failed because the control process exited with error code. See "systemctl status php-fpm.service" and "journalctl -xe" for details. 2月 25 21:49:00 nginx systemd[1]: Starting The PHP FastC…...

软件供应链安全工具链研究系列——RASP自适应威胁免疫平台(上篇)

1.1 基本能力 RASP是一种安全防护技术&#xff0c;运行在程序执行期间&#xff0c;使程序能够自我监控和识别有害的输入和行为。也就是说一个程序如果注入或者引入了RASP技术&#xff0c;那么RASP就和这个程序融为一体&#xff0c;使应用程序具备了自我防护的能力&#xff0c;…...

Spring Boot集成MyBatis访问MySQL:从项目搭建到基础数据库查询(基础入门)

Spring Boot集成MyBatis访问MySQL 一、引言 在当今企业级应用开发中&#xff0c;Spring Boot、MyBatis与MySQL的组合凭借其高效性和灵活性&#xff0c;成为构建数据驱动型应用的首选方案。本文将带你从零开始搭建项目&#xff0c;掌握Spring Boot集成MyBatis的基础入门内容。…...

一周学会Flask3 Python Web开发-Jinja2模板继承和include标签使用

锋哥原创的Flask3 Python Web开发 Flask3视频教程&#xff1a; 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili 不管是开发网站还是后台管理系统&#xff0c;我们页面里多多少少有公共的模块。比如博客网站&#xff0c;就有公共的头部&…...

【2025.2.25更新】wordpress免费AI插件,文章内容、图片自动生成、视频自动生成、网站AI客服、批量采集文章,内置deepseek联网满血版

wordpress免费AI插件&#xff0c;文章内容、文章图片、长尾关键词、视频自动生成、网站AI客服、批量采集文章&#xff0c;插件已接入腾讯云大模型知识引擎xDeepSeek&#xff0c;基于腾讯云大模型知识引擎xDeepSeek可联网满血版&#xff0c;插件可实现文章生成、长尾关键词生成、…...

待解决 leetcode71 简化路径 栈的应用

用多种ifelse很不好很复杂容易丢情况 class Solution { public:string simplifyPath(string path) {stack<char> st;string result;int n path.size();while(n > 1 && (path[n-1] / || path[n-1] .)){if(n > 2 && path[n-2] . && pat…...

数据安全_笔记系列09_人工智能(AI)与机器学习(ML)在数据安全中的深度应用

数据安全_笔记系列09_人工智能&#xff08;AI&#xff09;与机器学习&#xff08;ML&#xff09;在数据安全中的深度应用 人工智能与机器学习技术通过自动化、智能化的数据分析&#xff0c;显著提升了数据分类、威胁检测的精度与效率&#xff0c;尤其在处理非结构化数据、复杂…...

RocketMQ 可观测性最佳实践

RocketMQ 概述 Apache RocketMQ 是一个开源的分布式消息传递和流处理平台&#xff0c;由阿里巴巴团队最初开发并捐赠给 Apache 软件基金会。它主要用于处理大规模消息的发送和接收&#xff0c;支持高吞吐量、可扩展性强且具有高可用性的消息服务。 RocketMQ 的优势有以下几点…...

P9420 [蓝桥杯 2023 国 B] 子 2023

P9420 [蓝桥杯 2023 国 B] 子 2023 题目 分析代码 题目 分析 刚拿到这道题&#xff0c;我大脑简单算了一下&#xff0c;这个值太大了&#xff0c;直观感觉就很难&#xff01;&#xff01; 但是&#xff0c;你仔仔细细的一看&#xff0c;先从最简单的第一步入手&#xff0c;再…...

OpenAI开放Deep Research权限,AI智能体大战升级,DeepSeek与Claude迎来新对决

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

学习笔记04——JMM内存模型

一、Java内存模型&#xff08;JMM&#xff09;是什么&#xff1f; Java内存模型&#xff08;Java Memory Model, JMM&#xff09;是Java多线程编程中共享内存的访问规则&#xff0c;定义了线程如何与主内存&#xff08;Main Memory&#xff09;和工作内存&#xff08;Work Mem…...

将VsCode变得顺手好用(1

目录 设置中文 配置调试功能 提效和增强相关插件 主题和图标相关插件 创建js文件 设置中文 打开【拓展】 输入【Chinese】 下载完成后重启Vs即可变为中文 配置调试功能 在随便一个位置新建一个文件夹&#xff0c;用于放置调试文件以及你未来写的代码&#xff0c;随便命名但…...

Fisher信息矩阵(Fisher Information Matrix,简称FIM)

Fisher信息矩阵简介 Fisher信息矩阵&#xff08;Fisher Information Matrix&#xff0c;简称FIM&#xff09;是统计学和信息理论中的一个重要概念&#xff0c;广泛应用于参数估计、统计推断和机器学习领域。它以统计学家罗纳德费希尔&#xff08;Ronald Fisher&#xff09;的名…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留&#xff0c;CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制&#xff08;CCA-Attention&#xff09;&#xff0c;…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

push [特殊字符] present

push &#x1f19a; present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中&#xff0c;push 和 present 是两种不同的视图控制器切换方式&#xff0c;它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

Redis:现代应用开发的高效内存数据存储利器

一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发&#xff0c;其初衷是为了满足他自己的一个项目需求&#xff0c;即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源&#xff0c;Redis凭借其简单易用、…...