飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

楼主: Nisy

[C/C++] 视频9(02_02)中作业提交帖

[复制链接]

该用户从未签到

发表于 2009-6-6 11:31:49 | 显示全部楼层
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <time.h>
  4. #include <string.h>

  5. void main( void )
  6. {
  7.     int i,n;
  8.     int nTmp = 0;//临时存放rand()取得的值
  9.     static int nIndex = 0;//用来做数组索引
  10.     char szBuffer[256] = {0}; //待加密字串
  11.     char szEncrypt[256] = {0}; //存放加密结果
  12.     int* pAry = NULL;
  13.     int nLen = 0;
  14.     printf("Input string:");
  15.     scanf("%s",szBuffer); //输入

  16.     nLen = strlen(szBuffer);
  17.     pAry = (int*)malloc(nLen*sizeof(int)+1); //申请一个动态长度的数组

  18.     if (NULL == pAry)
  19.     {//是否申请空间失败
  20.         printf("error\r\n");
  21.         return;
  22.     }

  23.     memset(pAry,-1,nLen*sizeof(int));//初始化为-1,为了方便区分

  24.     srand( (unsigned)time( NULL ) );//用时间做随即种子

  25.     for (n = 0; n < nLen; n++) //控制取nLen个数字
  26.     {
  27.         while(1)
  28.         {
  29.             nTmp = rand()%nLen;//使数在0-nLen间

  30.             for(i=0; i<=nLen; i++)
  31.             {//判断数字是否存在
  32.                 if(pAry[i] == nTmp) break;
  33.             }
  34.             if(i == (nLen+1)  && pAry[nLen] != nTmp)
  35.             {//如果不存在则..
  36.                 pAry[nIndex] = nTmp;
  37.                 szEncrypt[nIndex] = szBuffer[nTmp];
  38.                 nIndex++;
  39.                 break;
  40.             }
  41.         }
  42.     }
  43.     /* Display . */
  44.     printf("key:");
  45.     for( n = 0; n < nLen; n++ )
  46.         printf("%d,",pAry[n]);
  47.     printf("\r\nEncrypt Result:%s\r\n",szEncrypt);
  48.     system("pause");
  49. }
复制代码
PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2019-5-6 22:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2009-6-7 02:16:41 | 显示全部楼层
    游客,如果您要查看本帖隐藏内容请回复

    稍后我会把乱序给补上

    [ 本帖最后由 ourui314 于 2009-6-7 02:37 编辑 ]
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2009-6-7 02:47:00 | 显示全部楼层
    居然用了我近3个小时。年纪大,脑子不好使了。/:L

    游客,如果您要查看本帖隐藏内容请回复
    dd.GIF

    TC2exe.rar

    12.67 KB, 下载次数: 2, 下载积分: 飘云币 -2 枚

    PYG19周年生日快乐!
  • TA的每日心情
    开心
    7 天前
  • 签到天数: 629 天

    [LV.9]以坛为家II

    发表于 2009-6-7 08:03:34 | 显示全部楼层
    我对个问题还没有搞定.
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-5-8 22:10
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2009-6-7 10:33:36 | 显示全部楼层
    基础太差了,没机会学下去,看一下
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-4-19 19:20
  • 签到天数: 29 天

    [LV.4]偶尔看看III

    发表于 2009-6-8 16:14:34 | 显示全部楼层
    做的好混乱,指针心里总不敢碰,还是对C的一些东西了解不够。代码是太冗长了。
    游客,如果您要查看本帖隐藏内容请回复
    排序.GIF
    加解密.GIF
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2009-6-10 08:15:01 | 显示全部楼层

    高考终于结束了,把作业提交了(第一个)

    main(){
            int a[3];
            int i,c;
            for(i=0;i<3;i++)
            scanf("%d",&a[i]);
            for(i=0;i<3;i++)
            if (a[i]>a[i+1])
            {c=a[i];
            a[i]=a[i+1];
            a[i+1]=c;
            }
            for(i=0;i<3;i++)
                    printf("%d",a[i]);
           
    }
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-12-17 18:40
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2009-8-31 10:52:39 | 显示全部楼层
    看看大家都在学什么
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表