C语言 · 数组查找及替换

来源:互联网 发布:九品网络电视官方下载 编辑:程序博客网 时间:2024/05/18 06:19
算法训练 数组查找及替换  
时间限制:1.0s   内存限制:512.0MB
    
问题描述
  给定某整数数组和某一整数b。要求删除数组中可以被b整除的所有元素,同时将该数组各元素按从小到大排序。如果数组元素数值在A到Z的ASCII之间,替换为对应字母。元素个数不超过100,b在1至100之间。
输入格式
  第一行为数组元素个数和整数b
  第二行为数组各个元素
输出格式
  按照要求输出
样例输入
7 277 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 }

 

 

 

0 0
原创粉丝点击