中国慕课哈工大第六周练兵区单选题

1.单选(1分)​C语言规定:在一个源程序中,main函数的位置   B

  • A.必须在程序的最后

  • B.可以任意

  • C.必须在程序的最开始 

  • D.必须在系统调用的库函数的后面

2.单选(1分)‎以下程序执行后输出结果是   A

#include <stdio.h> int MaxValue(int x, int y) {     return x>y? x:y; } int MinValue(int x,int y) {     return x>y? y:x; } int main() {      int a=4,b=3,c=5,d,e,f;     d=MaxValue(a,b);     d=MaxValue(d,c);     e=MinValue(a,b);     e=MinValue(e,c);     f=a+b+c-d-e;     printf("%d,%d,%d\n",d,f,e);     return 0; }

  • A.5,4,3

  • B.3,4,5

  • C.5,3,4

  • D.3,5,4

3.单选(1分)以下程序有语法错误,有关错误原因的正确说法是    D

#include <stdio.h> void prt_char(); int main() {     int G=5,k;      ......     k=prt_char(G);      ......     return 0; }  int prt_char(int x) {      ...... }

  • A.函数名不能使用下划线

  • B.变量名不能使用大写字母

  • C.函数prt_char(int x)定义的位置不对,不能放在主函数main()的后面。

  • D.函数原型和函数定义不匹配

40单选(1分)设计一个函数,用来判断一个整数是否为素数。   C

‏代码如下,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。

#include <math.h> #include <stdio.h> int IsPrimeNumber(int number); int main() {      int n, ret;      printf("Input n:");      scanf("%d", &n);      ret = IsPrimeNumber(n);      if (___________)      {            printf("%d is a prime number\n", n);      }      else      {           printf("%d is not a prime number\n", n);      }      return 0; } //函数功能:判断number是否是素数,函数返回非0值,表示是素数,否则不是素数 int IsPrimeNumber(int number) {      int i;            if (number <= 1) return 0; // 负数、0和1都不是素数             for (i=2; ________________; i++)          {               if (_______________) // 被整除,不是素数                    return 0;      }      return 1; }

  • A.第11行:   ret == 0

    第29行:   i<=sqrt(number)

    第31行:   number / i == 0

  • B.第11行:   ret == 0

    第29行:   i<=number

    第31行:   number % i == 0

  • C.第11行:   ret != 0

    第29行:   i<=sqrt(number)

    第31行:   number % i == 0

  • D.第11行:   ret != 0

    第29行:   i<=number

    第31行:   number / i == 0

5.单选(1分)编程计算下面组合数的值   B

‏代码如下,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。

#include <stdio.h> _________________________; int main() {      int m, k;      _________;            do{           printf("Please input m,k (m>=k>0):");           scanf("%d, %d", &m, &k);        } while (______________);              p = (double)Factorial(m) / (Factorial(k) * Factorial (m-k));      printf("p=%.0f\n", p);      return 0; } //函数功能:计算无符号整型数number的阶乘 unsigned long Factorial(unsigned int number) {      unsigned long i, result = 1;            for (________________)      {           result *= i;      }      return result; }

  • A.第2行:     unsigned long Factorial(int number)

    第6行:     int p

    第11行:   m<k && m<0 && k<0

    第23行:   i=2; i<=number; i++

  • B.第2行:     unsigned long Factorial(unsigned int number)

    第6行:    double p

    第11行:   m<k || m<0 || k<0

    第23行:   i=2; i<=number; i++

  • C.第2行:     unsigned Factorial(unsigned number)

    第6行:      int p

    第11行:    m<k || m<0 || k<0

    第23行:    i=1; i<=number; i++

  • D.第2行:     long Factorial(unsigned int number)

    第6行:    double p

    第11行:   m<k || m<0 || k<0

    第23行:   i=1; i<number; i++

     

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值