设为首页 加入收藏

TOP

计算机等级考试二级C语言程序设计专项训练题——数组元素的移动(六)
2023-07-23 13:32:25 】 浏览:549
Tags:计算机 程序设 计专项 元素的
tf("\nThe original string:    ");

    puts(str);

    fun(str);

    printf("\nThe string after moving: ");

    puts(str);

    printf("\n\n");

    return 0;

}

void fun(char *p)
{
    char  max,*q;
    int i=0;
    max=p[i];
    while (p[i]!=0)
    {
        if (max<p[i])
        {
            max=p[i];
             q=p+i;
        }
        i++;
    }
    while (q>p)
    {
        *q=*(q-1);
        q--;
    }
    p[0]=max;
}
参考程序

11.编写函数fun,它的功能是:把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,右边被移出字符串的字符绕回放到第1个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。

例如,形参s所指字符串为“abcdefgh”,执行结果为“ahcbedgf”。

#include <stdio.h>

void fun(char *s)

{

}

int main()

{

    char s[80]="abcdefgh";

    printf("The original string is :%s\n",s);

    fun(s);

    printf("The result string is :%s\n",s);

    return 0;

}

void fun(char *s)
{
    int i,k;
    char c;
    for (i=0;s[i]!='\0';i++) ;
    if (i%2==0)  k=i-1;
    else  k=i-2;
    c=s[k];
    for (i=k-2;i>=1;i-=2)
        s[i+2]=s[i];
    s[1]=c;
}
参考程序

12.编写函数fun,它的功能是:移动字符串中的内容。移动规则如下:把第1到m个字符平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。

例如,字符串中原有内容为:ABCDEFGHIJK,m的值为3,则移动后,字符串中的内容应该是:DEFGHIJKABC。

#include <stdio.h>

#include <string.h>

#define    N    80

void  fun(char  *w, int  m)

{

}

int main()

{

    char  a[N]= "ABCDEFGHIJK";

    int  m;

    printf("The original string:\n");puts(a);

    printf("\n\nEnter  m:  ");scanf("%d",&m);

    fun(a,m);

    printf("\nThe string after moving:\n");puts(a);

    printf("\n\n");

    return 0;

}

void  fun(char  *w, int  m)
{
    int k,i,t,n;
    n=strlen(w);
    for (k=1;k<=m;k++)
    {
        t=w[0];
        for (i=1;i<n;i++)
        {
            w[i-1]=w[i];
        }
        w[n-1]=t;
    }
}
参考程序
首页 上一页 3 4 5 6 下一页 尾页 6/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇冷知识:预处理字符串操作符 下一篇计算机等级考试二级C语言程序设计..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目