c語言編寫函式要求輸入整數n,將陣列下標到n的數都移到陣列末尾

2021-03-21 18:34:11 字數 4740 閱讀 6958

1樓:匿名使用者

只錯了一句

#include

void fun(int *w,int p,int n)int main()

,i,n=3,p=10;//p為陣列長度

fun(a,p,n);

for(i=0;i<10;i++)

printf("%3d ",a[i]);

2樓:

核心語句:

新陣列=(原陣列.slice(n+1)).concat(原陣列.slice(0,n+1));

c語言程式編寫:若陣列中有n個整數, 要求把下標從0到p(p小於等於n-1)的陣列元素平移到最後。

3樓:清_晨

void fun(int *w, int p, int n)for(i = 0; p+1+i < n;i++)for(j = 0;j <= p;j++)}

c語言:從鍵盤輸入n個整數並放到陣列x中,編寫一個函式,它將陣列x中的元素顛倒後仍然存放在原陣列中。

4樓:木生子識時務

這個可以用指標來完成,具體的**如下:

#include

void reversal( int *p, int n)}int main(void)

reversal即用來執行將陣列顛倒的功能。

5樓:

//#include "stdafx.h"//vc++6.0加上這一行.

#include "stdio.h"

void myfun(int *p,int n){int i,j;

for(j=n-1,i=0;i

scanf("%d",&n);

for(i=0;i

設計c語言程式,用一維陣列輸入n個整數,將這n個整數按從大到小排列

6樓:李凱新

給你看看c語言的三種排序方法吧,這是我們老師給總結的,你看懂後就自己在寫這個程式吧!

一、冒泡法(起泡法)

演算法要求:用起泡法對10個整數按升序排序。

演算法分析:如果有n個數,則要進行n-1趟比較。在第1趟比較中要進行n-1次相鄰元素的兩兩比較,在第j趟比較中要進行n-j次兩兩比較。

比較的順序從前往後,經過一趟比較後,將最值沉底(換到最後一個元素位置),最大值沉底為升序,最小值沉底為降序。

演算法源**:

# include

main()

/*輸出排序結果*/

printf("the sorted numbers: ");

for(i=0;i<10;i++)

printf("%d ",a[i]);

printf("\n");

}演算法特點:相鄰元素兩兩比較,每趟將最值沉底即可確定一個數在結果的位置,確定元素位置的順序是從後往前,其餘元素可能作相對位置的調整。可以進行升序或降序排序。

二、選擇法

演算法要求:用選擇法對10個整數按降序排序。

演算法分析:每趟選出一個最值和無序序列的第一個數交換,n個數共選n-1趟。第i趟假設i為最值下標,然後將最值和i+1至最後一個數比較,找出最值的下標,若最值下標不為初設值,則將最值元素和下標為i的元素交換。

演算法源**:

# include

main()

printf("the sorted numbers: ");

for(i=0;i<10;i++)

printf("%d ",a[i]);

printf("\n");

}演算法特點:每趟從無序序列中取出第一個數插入到有序序列的合適位置,元素的最終位置在最後一趟插入後才能確定位置。也可是先用迴圈查詢插入位置(可從前往後或從後往前),再將插入位置之後的元素(有序列中)逐個後移一個位置,最後完成插入。

該演算法的特點是在尋找插入位置的同時完成元素的移動。因為元素的移動必須從後往前,則可將兩個操作結合在一起完成,提高演算法效率。仍可進行升序或降序排序。

這應該會對你很有用的,好好學,把它弄懂!祝你好運!

7樓:倒黴熊

#include

#define n 5

int main()

for(i =0;i

}for(i =0;i

return 0;}

8樓:匿名使用者

排序:#include

void main()

for(i=0;i

printf("%5d",a[i]);

printf("\n");}

9樓:匿名使用者

#include

void sort(int *items, int count)

}int main()

c語言:編寫程式要求使用者錄入n個整數,並把這些整數儲存在陣列中,然後呼叫selection_sort函式進行排序。

10樓:聽不清啊

#include

#define n 100

void selection_sort(int a,int n);

int main()

return 0;

}void selection_sort(int a,int n)n--;

a[j]=a[n];

a[n]=max;

if(n!=1) /*這兒n為1時已不需要排序了*/selection_sort(a,n);}

11樓:但是金

#include

void selection_sort(int arr,int n)else

}int temp=arr[pos];

arr[pos] = arr[n-1];

arr[n-1]=temp;

selection_sort(arr, n-1);}}int main()

;int arr_length=9;

selection_sort(arr, arr_length);

for(int i =0;i權 是我寫的 你可以參考下

用c語言程式設計:要求用陣列,先輸入一個正整數n,在輸入n個整數,求其平均值(保留兩位小數

12樓:看灰過來了

float a[10],sum,m;

int n;

sum=0;

scanf("%d",&n);//需要注意輸入的n值要小於你定義的陣列的長度

for(i=0;i位小數

13樓:匿名使用者

#include "stdio.h"

void main(void)

printf("%.2f\n",1.0*sum/n);}

c程式改正:編寫函式實現將陣列後n個元素移到陣列的前面,成為前n個元素,求改正

14樓:金色潛鳥

給你改好了。

加工後要帶回的a 要設為引數 或 全域性量才行。

#include

main()

void fun(char *a, int n)b[j]='\0';

for(i=l-n;i

c[k]='\0';

strcpy(a,c);

strcat(a,b);}

15樓:匿名使用者

#include

void sort(char** p,int n,int s)}int main(int argc, const char * argv)

p=pstr;

int m;

printf("請輸入第幾個元素之後移至最前面:");

scanf("%d",&m);

sort(p,j,m);

for(i=0;i

return 0;}

【c語言】編寫程式,將一維陣列中的元素向右迴圈移動n次。

16樓:匿名使用者

程式如下:

#include #include

main()

printf("輸入迴圈移動的位數:");

scanf("%d",&n);

printf("移位前陣列:");

for(i=0;i

printf("\n");

for(i=0,j=n-1;i

for(i=0,j=n-1;i

for(i=n,j=n-1;i

printf("移位後陣列:");

for(i=0;i

printf("\n");

free(a);

}執行截圖:

.請編寫函式fun,該函式的功能是:移動一維陣列中的內容,若陣列中由n個整數,要求把下標從0到p(p小於等於

17樓:zcs**者

#include

#define n 80

void fun(int a[n],int p,int n){int i,j,b[n];

for(i=p+1,j=0;i道是不是你的說那個意思。

18樓:古硯而留香

你那個fun函式用來幹啥的你都沒說清楚。

用C 語言編寫程式 不是C 輸入正整數a,以及另外

include using namespace std int main cout 5個整數中那些小於a的整數的和是 return 0 編寫c 語言程式 輸入一個正整數a,以及另外5個正整數,輸出5個整數中小於a的整數 include using namespace std int main cou...

編寫標準C語言程式 輸入整數,按如下方式輸出 第一行輸出所有數字,第二行輸出

程式很簡單 你將數字存到字串中 然後輸出時,指標每次向前移動一位就可以了!include int main c語言編寫程式 輸入一個正整數,將其逆序輸出。例如,輸入12345,輸出54321.跪求大神用迴圈語句 include int main return 0 分析 首先,輸入的是一個整數,因此最...

c語言用函式編寫1,c語言用函式編寫11213141n11n

include double fun int n int main c語言編寫函式求 1 1 2 1 3 1 4 1 5 1 6 1 n的值怎麼做?結果是什麼呢?需要準備的材料分別有 電腦 c語言編譯器。1 首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如 test.cpp。2 在test.c...