【C语言】机试100题及代码答案(上)
1、题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前20个月)
- 分析:兔子的规律为数列1,1,2,3,5,8,13,21…即下个月是上两个月之和,该模型在数学上称为fibonacci数列。
- 代码:
#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
16、题目:用*号输出字母C的图案。
- 分析:可先用’*'号在纸上写出字母C,再分行输出。
- 代码:
#include int main() { printf(" ****\n"); printf(" *\n"); printf(" * \n"); printf(" ****\n"); return 0; }
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
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。
还没有评论,来说两句吧...