C语言 · 数组查找及替换

算法训练 数组查找及替换  
时间限制:1.0s   内存限制:512.0MB
    
问题描述
  给定某整数数组和某一整数b。要求删除数组中可以被b整除的所有元素,同时将该数组各元素按从小到大排序。如果数组元素数值在A到Z的ASCII之间,替换为对应字母。元素个数不超过100,b在1至100之间。
输入格式
  第一行为数组元素个数和整数b
  第二行为数组各个元素
输出格式
  按照要求输出
样例输入
7 2
77 11 66 22 44 33 55

样例输出

11 33 55 M

 

 1 #include<stdio.h> 
 2 int main(){
 3     int b,n;
 4     int k=0;
 5     scanf("%d %d",&n,&b);
 6     int a[100],c[100];
 7     /*输入数组元素*/
 8     for(int i=0;i<n;i++){
 9         scanf("%d",&a[i]);
10     }
11     /*删除能被b整除的元素*/
12     for(int i=0;i<n;i++){
13         /*删除能被b整除的元素*/ 
14         if(a[i] % b != 0){
15             c[k] = a[i];
16             k++;
17         }
18     }
19     /*冒泡升序*/ 
20     for(int i=0;i<k-1;i++){
21         for(int j=0;j<k-1-i;j++){
22             if(c[j]>c[j+1]){
23                 int temp = c[j];
24                 c[j] = c[j+1];
25                 c[j+1] = temp;
26             }
27         }
28     }
29     /*替换并输出结果*/
30     for(int i=0;i<k;i++){
31         if(c[i]>='A' && c[i]<='Z'){
32             int flag = c[i];
33             char ch = (char) flag;
34             printf("%c ",ch);
35         }else if(c[i]>='a' && c[i]<='z'){
36             int flag = c[i];
37             char ch = (char) flag;
38             printf("%c ",ch);
39         }else{
40             printf("%d ",c[i]);
41         }
42     }
43 }

 

 

 

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值