算法训练 数组查找及替换

博客围绕整数数组处理展开,给定整数数组和整数b,需删除数组中能被b整除的元素,对数组元素从小到大排序,若元素数值在A到Z的ASCII之间则替换为对应字母,还给出了输入输出格式及样例。

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

/*
问题描述
给定某整数数组和某一整数b。要求删除数组中可以被b整除的所有元素,
同时将该数组各元素按从小到大排序。如果数组元素数值在A到Z的ASCII之间,
替换为对应字母。元素个数不超过100,b在1至100之间。
输入格式
第一行为数组元素个数和整数b
第二行为数组各个元素
输出格式
按照要求输出


样例输入
7 2
77 11 66 22 44 33 55
样例输出
11 33  55 M
*/

#include<stdio.h>
void shuru( int [] , int *, int [] , int);
void px_sc( int [] , int );
int main(void)
{
	int gs , b;
	scanf("%d%d" , &gs ,&b);
	int s1[100] , s2[100];
	shuru( s1 , &gs ,s2 , b);
	px_sc(s2 , gs);
	return 0;
}
void px_sc( int s2[] , int n)
{
	int i , j;
	for(i = 0 ; i < n ; i++)
	{
		for(j=i+1; j < n ; j++) 
		{
			if( s2[i]>s2[j])
			{
				int tmp=s2[i];
				s2[i]=s2[j];
				s2[j]=tmp;
			}
		}
	}
	for( i = 0; i < n ; i ++)
	{
		if( 'A'<= s2[i] && s2[i] <='Z')
		{
			printf("%c " ,s2[i]);
		} 
		else
		{
			printf("%d ",s2[i]) ;
		}
		
	}
	
}
void shuru( int s1[] , int * gs ,int s2[] , int b)
{
	int i , j=0;
	for( i = 0 ; i < *gs ; i ++)
	{
		scanf("%d" , &s1[i]);
		if( s1[i] % b !=0)
		{
			s2[j++]=s1[i];
		}
	}
	*gs=j;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值