A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邹志鹏   /  2014-12-18 17:20  /  4271 人查看  /  67 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

依然0 发表于 2014-12-19 23:14
求代码!!!竟然不够十个字

百度一下,很多,我就不手打了~
回复 使用道具 举报

我也觉得,一开始我确实没想到要用三个for循环~~
回复 使用道具 举报
楼主是后付费吗
回复 使用道具 举报
还有楼主,你说的第四点是他问,你答吗?
回复 使用道具 举报
李欢宇 发表于 2014-12-20 13:42
还有楼主,你说的第四点是他问,你答吗?

是的,都是老师问,你回答
回复 使用道具 举报
编程题考几道啊?
回复 使用道具 举报
感谢楼主分享
回复 使用道具 举报
HM_lpn 发表于 2014-12-19 14:59
Foundation入学测试和面试的有没有考啊

我入学测试考了2道fd的。
回复 使用道具 举报
多少分 楼主
回复 使用道具 举报

37,不知道是不是算低分的~
回复 使用道具 举报
祝楼主被录取
回复 使用道具 举报
谢谢楼主的分享,祝楼主面试成功!
回复 使用道具 举报
依然0 发表于 2014-12-19 23:14
求代码!!!竟然不够十个字

我自己写的,不知道怎么样,你参考吧~~

  1. typedef struct num
  2. {
  3.     int n;
  4.     bool b; // 标记当前数字是否使用过
  5. } num;

  6. int main()
  7. {
  8.     num a[]={{1, 1}, {2, 1}, {3, 1}, {4, 1}};
  9.    
  10.     // 用于计数
  11.     int count = 0;
  12.    
  13.     // 百位数字
  14.     for (int i =0; i<4; i++)
  15.     {
  16.         // 保存组成的三位数。
  17.         int num = 0;
  18.         
  19.         // 标记当前数字已使用
  20.         a[i].b =0;
  21.         
  22.         // 十位数字
  23.         for (int j = 0; j<4; j++)
  24.         {
  25.             // 如果当前数字没有使用
  26.             if (a[j].b == 1)
  27.             {
  28.                 // 标记当前数字已使用
  29.                 a[j].b = 0;
  30.                
  31.                 // 各位数字
  32.                 for (int k =0; k<4; k++)
  33.                 {
  34.                     // 如果当前数字没有使用
  35.                     if (a[k].b == 1)
  36.                     {
  37.                         count ++;
  38.                         
  39.                         // 组合成的百位数字
  40.                         num = a[i].n * 100 + a[j].n * 10 + a[k].n;
  41.         
  42.                         // 输出这个数
  43.                         NSLog(@"第%d个三位数是:%d", count, num);
  44.                     }
  45.                 }
  46.                 // 重置当前数字为可用
  47.                 a[j].b = 1;
  48.             }
  49.         }
  50.         // 重置当前数字为可用
  51.         a[i].b = 1;
  52.     }
  53.    
  54.     return 0;
  55. }
复制代码
回复 使用道具 举报
#include <stdio.h>

int main(int argc, const char * argv[])
{
    int n=0;
    for (int a=1; a<=4; a++) {
        for (int b=1; b<=4; b++) {
            for (int c=1; c<=4; c++ ) {
                if (a!=b && a!=c && b!=c) {
                    n++;
                    printf("%d%d%d\n",a,b,c);
                }
            }
        }
    }
    printf("共有%d个不同的数字\n",n);
    return 0;
}
其实静下心来想一下,就能大概知道是个循环。
三个数,就是三个循环嵌套。
再用条件语句剔除不需要的数字,很容易就能出结果了。
最重要的还是个思路问题。
回复 使用道具 举报
lanyu2014sc 发表于 2014-12-21 17:03
#include
int main(int argc, const char * argv[]){    int n=0;    for (int a=1; a

你说的对,其实很多题并不难,要是能快速理解题意,找到规律就能想出方法来。
回复 使用道具 举报
如果26号前参加不了面试还有机会吗?
回复 使用道具 举报
火焱w 发表于 2014-12-21 20:47
如果26号前参加不了面试还有机会吗?

有的,那你就等第三批咯,不过如果前两批招满的话,就不招第三批了
回复 使用道具 举报
多少分?哥们
回复 使用道具 举报
恭喜恭喜
回复 使用道具 举报
霸气的杰少 发表于 2014-12-18 18:29
那还行 我以为会是很久的呢。。。。

40分钟,我觉得够久了啊,越久越紧张。。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马