C語言刪除數(shù)組指定元素的源代碼如下:
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、六盤水網(wǎng)站維護(hù)、網(wǎng)站推廣。
#include stdio.h
main()
{
char s[80],c;
int j,k;
printf("\nEnter a string: ");
gets(s);
printf("\nEnter a character: ");
c=getchar( );
for(j=k=0;s[j]!= '\0';j++)
if(s[j]!=c)
s[k++]=s[j];
s[k]= '\0';
printf("\n%s\n",s);
system("pause");
}
擴(kuò)展資料
自定義函數(shù)代碼如下
function delarrayval2($arr,$v){
$keyarr = array_keys($arr, $v);
if(count($keyarr)){
foreach ($keyarr as $key) {
unset($arr[$key]);
}
}
return $arr;
}
#include stdio.h
#include stdlib.h
/**
*** value - 指定值
*** arr - 數(shù)組
*** arr_len - 數(shù)組長度的地址(指針)
**/
int delete_node(const int value, int *arr, int *arr_len)
{
int i = 0;
while (i *arr_len) {
if (arr[i] == value) {
int j = i;
while (j *arr_len - 1) {
arr[j] = arr[j+1];
++j;
}
--(*arr_len);
}
else {
++i;
}
}
}
int main()
{
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int arr_len = sizeof(arr)/sizeof(arr[0]);
delete_node(4, arr, arr_len);
for (int i=0; iarr_len; ++i)
printf("%d ", arr[i]);
printf("\n");
delete_node(6, arr, arr_len);
for (int i=0; iarr_len; ++i)
printf("%d ", arr[i]);
printf("\n");
}
利用C語言刪除字符串中所有指定的字符方法如下:
1.基本方法是,編寫函數(shù)fun:deletechar()。這個(gè)函數(shù)需要接受兩個(gè)參數(shù)的傳入,一個(gè)為該字符串str,另一個(gè)為想刪除的字符c。通過對(duì)整個(gè)字符串的逐個(gè)遍歷,凡是檢測到字符為c,則刪除此字符。具體實(shí)現(xiàn)代碼如下:
2.在主函數(shù),只需要接受用戶輸入的字符串,然后調(diào)用deletechar()函數(shù),最后輸出結(jié)果即可。主函數(shù)代碼實(shí)現(xiàn)部分如下:
擴(kuò)展資料:
1.remove()是C語言中的函數(shù),一般作用是刪除數(shù)組、鏈表對(duì)象所有的元素。函數(shù)原型是
2.remove()函數(shù)用于刪除指定的文件,其原型如下:
參考資料:remove()函數(shù)-百度百科
既然是數(shù)組,表示數(shù)據(jù)為線性陣列了,想刪除其中一個(gè)數(shù)據(jù),是不可能的,只能用該位置以后的數(shù)據(jù)整體平移一個(gè)位置覆蓋當(dāng)前位置。例如:數(shù)組數(shù)據(jù)
1
2
3
4
5
6
7,想刪除3,那么得到的新數(shù)組為1
2
4
5
6
7,其中
4
5
6
7
數(shù)據(jù)的位置相對(duì)原始數(shù)組位置整體平移減小1。
當(dāng)然想是想快速刪除數(shù)據(jù),可以考慮使用數(shù)據(jù)鏈表,對(duì)數(shù)組單鏈即可
你這代碼的錯(cuò)誤地方讓人無語,如下:
#includestdio.h
#include stdlib.h
int Delete(int array[20], int n);
int main()
{
int array[20]={0};
int x,n;
//for(x=0;x21;x++)//錯(cuò)誤1:循環(huán)結(jié)束點(diǎn)有錯(cuò)
printf("輸入20個(gè)整形:");
for (x=0;x20;x++)
{
//scanf("%d",array[x]);//錯(cuò)誤2:你這scanf都不會(huì)用了?
scanf("%d ",array+x);
}
//for(x=0;x200;x++)//錯(cuò)誤3:你這怎么又變成200了
for(x=0;x20;x++)
{
printf("%d",array[x]);
}
printf("\n,輸入要?jiǎng)h除的序號(hào)");
scanf("%d",n);
Delete(array,n);
system("pause");
}
int Delete(int array[20], int n)
{
int i,len,y,m;
//len=0;//錯(cuò)誤4:這個(gè)不解釋
len=19;
m=array[n];
//for(y=0;n+y21;y++)//錯(cuò)誤5:....
for(y=0;n+y20;y++)
{
array[n+y-1]=array[n+y];
}
for(i=0;ilen;i++)
{
printf("%3d",array[i]);
}
return m;
}
分別弄了一個(gè),看看吧,希望對(duì)你有用:
排序:
#define N 10
main()
{int i,j,min,tem,a[N];
/*input data*/
printf("please input ten num:\n");
for(i=0;iN;i++)
{
printf("a[%d]=",i);
scanf("%d",a[i]);}
printf("\n");
for(i=0;iN;i++)
printf("%5d",a[i]);
printf("\n");
/*sort ten num*/
for(i=0;iN-1;i++)
{min=i;
for(j=i+1;jN;j++)
if(a[min]a[j]) min=j;
tem=a[i];
a[i]=a[min];
a[min]=tem;
}
/*output data*/
printf("After sorted \n");
for(i=0;iN;i++)
printf("%5d",a[i]);
}
按序插入:
main()
{
int a[11]=;
int temp1,temp2,number,end,i,j;
printf("original array is:\n");
for(i=0;i10;i++)
printf("%5d",a[i]);
printf("\n");
printf("insert a new number:");
scanf("%d",number);
end=a[9];
if(numberend)
a[10]=number;
else
{for(i=0;i10;i++)
{ if(a[i]number)
{temp1=a[i];
a[i]=number;
for(j=i+1;j11;j++)
{temp2=a[j];
a[j]=temp1;
temp1=temp2;
}
break;
}
}
}
for(i=0;i11;i++)
printf("%6d",a[i]);
}
查找并刪除:
#includestdio.h
main()
{int i,j,k;
int s[10],a;
printf("input 10 numbers:\n");
for(k=0;k10;k++)
scanf("%d",s[k]);
printf("input a number:\n");
scanf("%d",a);
for(i=j=0;i10;i++)
if(s[i]!=a) s[j++]=s[i];
for(i=0;ij;i++)
printf("%d",s[i]);
}
我可以幫助你,你先設(shè)置我最佳答案后,我百度Hii教你。