C语言算法

1.删除一组字符串中的数字和空格

# include <stdio.h>
#include <stdlib.h>
void DropNum(char* str){
       int i=0;
       int j=0;
       while(str[i]!='\0'){
             if(str[i]>'9'||str[i]<'0'&&str[i]!=' ')
                str[j++]=str[i];
       i++;
       }
       str[j]='\0';//字符串最后一个字符时'\0'
}
void main(){
        char ch[] = "dsla312312jlkjl dla";
        DropNum(ch);
        printf("%s\n",ch);
        getchar();
}

2.插入排序

#include <stdio.h>

void insertSort(int *,int);
int main()
{
    int i,n;
    int num[10];
    printf("请输入要排序的个数:");
    while(scanf("%d",&n) != EOF)
    {
        for(i = 0;i < n;i++)
        {
            printf("请输入第%d数字:",i+1);
            scanf("%d",num+i);
        }
        insertSort(num,n);
        printf("排序结果为:");
        for(i = 0; i < n; i++)
        {   
            printf("%d  ",num[i]);
        }
        printf("\n");
    }
    return 0;
}

void insertSort(int *array,int len)
{
    int i,j,temp;
    for(i = 1; i < len; i++)
    {
        temp = array[i];
        for(j = i - 1; j >= 0;j--)
        {
            if(array[j] > temp)
            {
                array[j + 1] = array[j];
            }else
            {
                break;
            }
        }
        array[j + 1] = temp;
    }
}

posted @ 2016-06-16 11:16  撸码之路  阅读(171)  评论(0编辑  收藏  举报