ZZULIOJ 1117: 查找数组元素
生活随笔
收集整理的這篇文章主要介紹了
ZZULIOJ 1117: 查找数组元素
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
查找數組元素
題目描述
輸入n個整數構成一個數組,在這個數組中查找x是否存在,如果存在,刪除x,并輸出刪除元素后的數組。如果不存在,輸出“Not Found”。
定義一個查找函數find(),在數組a中查找x,若找不到函數返回-1,若找到返回x的下標,函數原型如下:
int find(int a[], int n, int x);
然后在main()中,先調用函數find(),若查找失敗輸出“Not Found";若查找成功,則調用上一題中定義的函數del()刪除該元素,再調用上一題中的PrintArr()輸出刪除元素后的數組內容。
輸入
輸入第一行是一個正整數n(1<=n<=10);
第二行是n個整數,構成一個數組;
第三行是一個整數x,表示待查找元素。
輸出
輸出刪除元素后的數組,每個元素占4列,右對齊。如果不存在,輸出“Not Found”。如果數組中有多個x,只刪除下標最小的那個。
樣例輸入 Copy
6
3 6 2 4 7 9
4
樣例輸出 Copy
3 6 2 7 9
#include<stdio.h> int find(int a[],int n,int x)//查找函數 {int i;for(i=0;i<n;i++){if(a[i]==x)return i;}return -1; } void del(int a[],int n,int x)//刪除函數 {int i;for(i=x;i<n;i++){a[i]=a[i+1];} } void PrintArr(int a[],int n)//輸出函數 {int i;for(i=0;i<n-1;i++){printf("%4d",a[i]);}printf("\n"); } int main() {int i,x,n;int a[10];scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",&a[i]);}scanf("%d",&x);x=find(a,n,x);if(x==-1)//沒找到{printf("Not Found\n");}else{del(a,n,x);//刪除函數PrintArr(a,n);//輸出函數}return 0; }
總結
以上是生活随笔為你收集整理的ZZULIOJ 1117: 查找数组元素的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OJ1037: 四则运算
- 下一篇: windows media player