【C语言】机试100题及代码答案(上)

05-01 1713阅读 0评论

1、题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前20个月)

  • 分析:兔子的规律为数列1,1,2,3,5,8,13,21…即下个月是上两个月之和,该模型在数学上称为fibonacci数列。

    【C语言】机试100题及代码答案(上)

  • 代码:
    #include 
    int fib(int n) {
    	if (n == 1 || n == 2) {
    		return 1;
    	}else{
    		return fib(n - 1) + fib(n - 2);
    	}
    }
    int main()
    {
    	for (int i = 1; i 
    		printf("第%d个月兔子总数为:%d\n", i, fib(i));
    	}
    	return 0;
    }
    
    	int i=0;
    	int count = 0; //素数个数
    	
    	for (i = 101; i 
    		int j = 0;
    		int flag = 1; //假设是素数
    		for (j = 2; j  
    

    【C语言】机试100题及代码答案(上)

    16、题目:用*号输出字母C的图案。

    • 分析:可先用’*'号在纸上写出字母C,再分行输出。
    • 代码:
      #include 
      int main()
      {
      	printf(" ****\n");
      	printf(" *\n");
      	printf(" * \n");
      	printf(" ****\n");
      	return 0;
      }
      

      【C语言】机试100题及代码答案(上)

      17、题目:输出特殊图案。

      • 分析:字符共有256个。不同字符,图形不一样。
      • 代码:
        #include 
        int main()
        {
        	char a = 176, b = 219;
        	printf("%c%c%c%c%c\n", b, a, a, a, b);
        	printf("%c%c%c%c%c\n", a, b, a, b, a);
        	printf("%c%c%c%c%c\n", a, a, b, a, a);
        	printf("%c%c%c%c%c\n", a, b, a, b, a);
        	printf("%c%c%c%c%c\n", b, a, a, a, b);
        	return 0;
        }
        

        18、题目:输出9*9口诀。

        • 分析:分行与列考虑,共9行9列,i控制行,j控制列。
        • 代码:
          #include 
          int main()
          {
          	int r;
          	for (int i = 1; i 
          		for (int j = 1; j 
          			if (i = j) {
          				r = i * j;
          				printf("%d * %d = %d\t", i, j, r);
          			}		
          		}
          		printf("\n");
          	}
          	return 0;
          }
          
          	int i, j;
          	for (i = 1; i 
          		for (j = 1; j 
          			if ((i + j) % 2 == 0) { // 行和列相加为偶数的是白格
          				printf("■");
          			}else {
          				printf("  "); // 3个空格
          			}				
          		}		
          		printf("\n");
          	}
          	return 0;
          }
          
          	printf("\n");//输出两个笑脸
          	for (int i = 1; i 

免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,1713人围观)

还没有评论,来说两句吧...

目录[+]