取数组中每个元素的最高位

news2024/12/23 14:23:58

1 题目

/*程序将一维数组a中N个元素的最高位取出,保存在一维数组b的对应位置。
程序运行结果为:
a:82 756 71629 5 2034
b: 8 7 7 5 2
*/

2 思考

简单来说就是取一个数据的最高位。
一开始的笨方法没有办法判断数据的长度,后来看到了聪明的方法,值得学习

3 探究

3.1 聪明的方法

for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		temp=arr_a[i];
		while(temp>10)
		{
			temp=temp/10;
		}
		arr_b[i]=temp;
	}

3.1 笨方法

for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		if(arr_a[i]<10)
		{
			arr_b[i]=arr_a[i];
		}
		else if(arr_a[i]<100)
		{
			arr_b[i]=arr_a[i]/10;
		}
		else if(arr_a[i]<1000)
		{
			arr_b[i]=arr_a[i]/100;
		}
		else if(arr_a[i]<10000)
		{
			arr_b[i]=arr_a[i]/1000;
		}
		else if(arr_a[i]<100000)
		{
			arr_b[i]=arr_a[i]/10000;
		}
		else //if(arr_a[i]<1000000)
		{
			arr_b[i]=arr_a[i]/100000;
		}	
	}

4 完整代码

/*程序将一维数组a中N个元素的最高位取出,保存在一维数组b的对应位置。
程序运行结果为:
a:82  756  71629   5  2034
b:  8    7      7   5     2
*/
#include <stdio.h>
int main(void)
{
	int i=0;
	int arr_a[]={82 ,756 , 71629 ,  5  ,2034};
	int arr_b[10];
	int temp;

	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		temp=arr_a[i];
		while(temp>10)
		{
			temp=temp/10;
		}
		arr_b[i]=temp;
	}

	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		printf("arr_a[%d]=%d\t",i,arr_a[i]);
	}
	printf("\n");
	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		printf("arr_b[%d]=%d\t",i,arr_b[i]);
	}
	printf("\n");

	return 0;
}

在这里插入图片描述

5 自己输入元素,练习printf

/*程序将一维数组a中N个元素的最高位取出,保存在一维数组b的对应位置。数组a的数据从键盘输入
程序运行结果为:
a:82  756  71629   5  2034
b:  8    7      7   5     2
*/
#include <stdio.h>
#define N 4

int main(void)
{
	int i=0;
	int arr_a[N];
	int arr_b[N];
	int temp;

	printf("请输入%d个元素\n",N);
	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		scanf("%d",&arr_a[i]);
	}
	

	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		temp=arr_a[i];
		while(temp>10)
		{
			temp=temp/10;
		}
		arr_b[i]=temp;
	}

	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		printf("arr_a[%d]=%d\t",i,arr_a[i]);
	}
	printf("\n");
	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		printf("arr_b[%d]=%d\t",i,arr_b[i]);
	}
	printf("\n");

	return 0;
}

在这里插入图片描述

6 求输入元素最低位——拓展题

/*程序将一维数组a中N个元素的最低位取出,保存在一维数组b的对应位置。数组a的数据从键盘输入
程序运行结果为:
a:82  756  71629   5  2034
b:  2    6      9   5     4
*/
#include <stdio.h>
#define N 4

int main(void)
{
	int i=0;
	int arr_a[N];
	int arr_b[N];
	int temp;

	printf("请输入%d个元素\n",N);
	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		scanf("%d",&arr_a[i]);
	}
	

	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		arr_b[i]=arr_a[i]%10;
	}

	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		printf("arr_a[%d]=%d\t",i,arr_a[i]);
	}
	printf("\n");
	for(i=0;i<sizeof(arr_a)/sizeof(int);i++)
	{
		printf("arr_b[%d]=%d\t",i,arr_b[i]);
	}
	printf("\n");

	return 0;
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/950293.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nowcoder NC236题 最大差值

目录 题目描述&#xff1a; 示例1 示例2 题干解析&#xff1a; 暴力求解&#xff1a; 代码展示&#xff1a; 优化&#xff1a; 代码展示&#xff1a; 题目跳转https://www.nowcoder.com/practice/a01abbdc52ba4d5f8777fb5dae91b204?tpId128&tqId33768&ru/exa…

BFT最前线|AI透过胸片估测患者年龄,可揭示其患慢性病风险;中信建投:国产人形机器人核心零部件成本下行值得期待

文 | BFT机器人 AI视界 TECHNOLOGY NEWS 看点1 AI模拟芯片能效达传统芯片14倍 《自然》23日发表的研究报道了一种能效为传统数字计算机芯片14倍的人工智能&#xff08;AI&#xff09;模拟芯片。这一由IBM研究实验室开发的芯片在语音识别上的效率超过了通用处理器。该技术或能…

【java中的Set集合】HashSet、LinkedHashSet、TreeSet(最通俗易懂版!!)

目录 一、HashSet集合 1.HashSet集合的特点 2.HashSet常用方法 二、LinkedHashSet集合 LinkedHashSet集合的特点 三、TreeSet集合 1.TreeSet集合的特点 2.TreeSet的基本使用 四、HashSet、LinkedHashSet、TreeSet的使用场景 五、list和set集合的区别 一、HashSet集合 …

yolo增加mobileone

代码地址&#xff1a;GitHub - apple/ml-mobileone: This repository contains the official implementation of the research paper, "An Improved One millisecond Mobile Backbone". 论文地址&#xff1a;https://arxiv.org/abs/2206.04040 MobileOne出自Apple&am…

java八股文面试[数据库]——B树和B+树的区别

B树是一种树状数据结构&#xff0c;它能够存储数据、对其进行排序并允许以O(logn)的时间复杂度进行查找、顺序读取、插入和删除等操作。 1、B树的特性 B树中允许一个结点中包含多个key&#xff0c;可以是3个、4个、5个甚至更多&#xff0c;并不确定&#xff0c;需要看具体的实…

VBA技术资料MF50:VBA_在Excel中突出显示前3个值

【分享成果&#xff0c;随喜正能量】人受到尊重&#xff0c;不是因为权钱&#xff0c;而是他骨子里透出的&#xff0c;正直与善良。。 我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高…

RabbitMQ工作模式-路由模式

官方文档参考&#xff1a;https://www.rabbitmq.com/tutorials/tutorial-four-python.html 使用direct类型的Exchange,发N条消息并使用不同的routingKey,消费者定义队列并将队列routingKey、Exchange绑定。此时使用direct模式Exchange必须要routingKey完成匹配的情况下消息才…

Node.js /webpack DAY6

一、Node.js 入门 1. 什么是 Node.js&#xff1f; 2. 什么是前端工程化&#xff1f; 3. Node.js 为何能执行 JS&#xff1f; 4. Node.js 安装 5. 使用 Node.js 总结 6. fs 模块 - 读写文件 /*** 目标&#xff1a;基于 fs 模块 读写文件内容* 1. 加载 fs 模块对象* 2. 写入文件…

Java并发(十五)----synchronized解决共享的问题

为了避免临界区的竞态条件发生&#xff0c;有多种手段可以达到目的。 阻塞式的解决方案&#xff1a;synchronized&#xff0c;Lock 非阻塞式的解决方案&#xff1a;原子变量 此次介绍使用阻塞式的解决方案&#xff1a;synchronized&#xff0c;来解决上述问题&#xff0c;即…

Ubuntu入门03——Ubuntu用户操作

1.Ubuntu如何进入root用户 进入ROOT用户的指令&#xff1a; Linux用su命令来切换用户&#xff1a; su root执行命令后&#xff0c;会提示你输入密码&#xff0c;而Ubuntu是没有设置root初始密码的。 若su命令不能切换root&#xff0c;提示su: Authentication failure&#x…

弹窗、抽屉、页面跳转区别 | web交互入门

当用户点击或触发浏览页面的某个操作&#xff0c;有很多web交互方式&#xff0c;可以大致分为弹窗、抽屉、跳转新页面三种web交互方式。虽然这三种web交互方式看起来没什么不同&#xff0c;但实际上弹窗、抽屉、跳转新页面对交互体验有蛮大的影响。 这需要UI\UX设计师针对不同…

【拾枝杂谈】从游戏开发的角度来谈谈原神4.0更新

君兮_的个人主页 勤时当勉励 岁月不待人 C/C 游戏开发 Hello,米娜桑们&#xff0c;这里是君兮_&#xff0c;结合最近的学习内容和以后自己的目标&#xff0c;今天又开了杂谈这个新坑&#xff0c;分享一下我在学习游戏开发的成长和自己的游戏理解&#xff0c;当然现在还是一枚…

Kotlin入门1. 语法基础

Kotlin入门1. 语法基础 一、简介二、在Idea创建一个示例项目三、基本语法1. 第一个程序2. 基本数据类型(1) 数字(2) 类型转换(3) 数学运算位运算 &#xff08;4&#xff09;可空类型 3. 函数4. 字符串(1) 字符串拼接(2) 字符串查找(3) 字符串替换(4) 字符串分割 5. null 安全的…

系统架构师---系统规划

目录 前言&#xff1a; 项目的提出与选择 项目立项的目标和动机 进行基础研究并获取技术 进行应用研发并获得产品 提供技术服务 信息技术产品的使用者 项目的选择和确定 选择有核心价值的产品、项目或可开发方向 评估项目风险、收益和代价 评估项目的多种实施方式 平…

HDFS文件删除后,HIVE元数据还存在的问题

一.背景 手动在hdfs上删除了一个表的分区数据(inc_day2023-08-30)&#xff0c;当查询这个表这个分区的数据时报错文件不存在 二.原因 即HDFS数据删除了&#xff0c;但是hive metastore元数据却没有更新&#xff0c;使用show partitions tablename 发现该分区还存在 三.解决办法…

python 笔记(1)——基础和常用部分

目录 1、print 输出不换行 2、格式化输出字符串 3、浮点数的处理 4、进制转换和ASCII与字符间的转换 5、随机数 6、字符串截取和内置方法 6-1&#xff09;字符串截取 6-2&#xff09;字符串内置方法 7、元组、列表&#xff0c;及其遍历方式 7-1&#xff09;列表常用内…

前端开发学习路线

无前端基础学习路线&#xff1a; B站免费视频1 B站免费视频2 有HTML、CSS、JavaScript基础&#xff0c;可直接通过以上视频中Vue2Vue3中实战项目学习Vue。

【网络】多路转接——poll | epoll

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《网络》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; 书接上文五种IO模型 | select。 poll | epoll &#x1f367;poll&#x1f9c1;认识接口&#x1f9c1;简…

<硬件设计> 阻抗设计(二) 使用Si9000计算阻抗

目录 01 阻抗相关参数 02 差分阻抗设计示例 确定阻抗线模型 明确对应差分线特征阻抗 获取板厂的板材、阻焊相关参数 使用Si9000软件通过调整线宽和线间距达到目标阻抗 03 文章总结 大家好&#xff0c;这里是程序员杰克。一名平平无奇的嵌入式软件工程师。 上篇已对阻抗…