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 }

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM