• 实验10:指针2


    1、输入一个字符串和一个正整数x,将该字符串中的后x个字符复制到另一个字符串y中,输出字符串y;再对y串的内容前后倒置后存入数组z中并输出。

    //输出字符串
    #include<string.h>
    #include<stdio.h>
    void main()
    {
        int i,n;
        char a[]="abcABCD";   //定义数组字符
        char c1[10],*p,*q;
        p=a;   
        q=c1;
        scanf("%d",&n);
        if(strlen(a)>=n)
            p+=n-1;   
        for(;*p!='';p++,q++)
            *q=*p;
            *q='';
        printf("string a:%s
    ",a);
        printf("string c1:%s
    ",c1);
    }
             

    2、为了防止信息被别人轻易窃取,需要把电码明文通过加密方式变换成为密文。变换规则是:小写字母z变换成为a,其它字符变换成为该字符ASCII码顺序后1位的字符,比如o变换为p。

    //密码变换问题
    #include<stdio.h>
    #include<string.h>
    #define MAXLINE 100
    void encrypt(char*);
    int main(void)
    {
        char s[MAXLINE];
    
        printf("Input the string:");
        gets(s);
        encrypt(s);
        printf("%s%s
    ","After being encrypted:",s);
        return 0;
    }
    void encrypt(char*s)
    {
        for(;*s!='';s++)
            if(*s=='z')
                *s='a';
            else
               *s=*s+1;
    }

    3、请编一个程序,可以将英语规则名词由单数变成复数。已知规则如下:(a)以辅音字母y结尾,则将y改成i,再加es;(b)以s、x、ch、sh结尾,则加es;(c)以元音字母o结尾,则加es;(d)其他情况直接加s。要求用键盘输入英语规则名词,屏幕输出该名词的复数形式。

    4、有n个人围成一圈,按顺序从1到n编号。从第一个人开始报数,报数3的人退出圈子,下一个人从1开始重新报数,报数3的人退出圈子。如此循环,直到留下最后一个人。

    //循环,输出留下来的人的编号
    #include<stdio.h>
    main(void)
    {
        int a[30],index;
        int n,i,j,*p;
        
        printf("Input n:");  //输出退圈子报的数字
        scanf("%d",&n);
      //循环开始
        for(i=0;i<n;i++)a[i]=i+1;   
        p=a-1;j=n;
        while(j!=1)
        {
        i=1;
        while(i<=3)
        {
            p++;
            if(p==(a+n))p=a;
            if(*p==0)continue;
            else i++;
        }
        while(*p==0)
        {
    
            p++;   //p所指向的变量发生改变,然后修改指针的值
            if(p==(a+n))p=a;
        }
        if(*p!=0){printf("%d",*p);*p=0;j--;}
        }
        printf("
    LastNo.is:");   //输出最后一个数字
        for(i=0;i<n;i++)if(a[i]!=0)printf("%d
    ",a[i]);//设计循环
    
        return 0;
    }
  • 相关阅读:
    centos6.4下搭建Lampp
    lampp环境部署bugfree3.0.4
    ftp使用踩坑
    redis故障处理
    程序设计语言发展回顾与展望
    那些相见恨晚的 JavaScript 技巧
    我的七个建议
    让UNION与ORDER BY并存于SQL语句当中
    使用SQL语句创建登录名,并为指定数据库分配制定权限
    Linux操作系统菜鸟变成高手的十个建议
  • 原文地址:https://www.cnblogs.com/zhangling213549/p/3417454.html
Copyright © 2020-2023  润新知