题目一
实现一个函数,判断一个数是不是素数。
利用上面实现的函数打印100到200之间的素数。
代码如下
void J_Prime(int y) { int x = 0; for ( x = 2; x < sqrt(y); x++) { if (y%x==0) { break; } } if (x>=sqrt(y)) { printf("%d\n", y); } } int main() { int i = 0; for ( i = 100; i <= 200; i++) { J_Prime(i); } return; }
这道题目并不是很难
主要的难点在于for循环下面的if 也就是如何判断是一个素数
题目二
以下叙述中不正确的是:( )
作业内容
A.在不同的函数中可以使用相同名字的变量
B.函数中的形式参数是在栈中保存
C.在一个函数内定义的变量只在本函数范围内有效
D.在一个函数内复合语句中定义的变量在本函数范围内有效(复合语句指函数中的成对括号构成的代码)
这一题的答案是D
符合语句中定义的变量只在复合语句中生效
题目三
函数调用exec((vl,v2),(v3,v4),v5,v6);中,实参的个数是:( )
作业内容
A.3
B.4
C.5
D.6
这一题的正确答案是B
主要考察了对于逗号表达式的理解
exec((vl,v2),(v3,v4),v5,v6) 总共有四个参数
(v1, v2)属于第一个实参,逗号表达式,真实的参数时v2
(v3,v4)属于第二个实参,逗号表达式,真实的参数是v4
v5属于第三个实参
v6属于第四个实参
因此选择:B
题目四
switch©语句中,c不可以是什么类型( )
作业内容
A.int
B.long
C.char
D.float
解析:c必须是整型和枚举类型
而在我的第二篇博客中其实也详细写明了 枚举类型其实也是整型的一种
D是浮点类型的一种 所以本题选择D
题目五
则func(1) = ( )
解析: 因为没有break 所以switch语句会一直执行下去 最后执行default b=0
所以最后b的值为0.