中国石油大学《c语言程序设计》第一次在线作业

第一次在线作业

单选题 (共22道题)

收起

1.(2.5分) 一个C语言程序总是从()开始执行。

  •    A、A. 主过程
  •    B、B. 主函数
  •    C、C. 子程序
  •    D、D.主程序
我的答案:B  此题得分:2.5分

2.(2.5分) 以下叙述不正确的是:()。

  •    A、A. 在C程序中,语句之间必须要用分号" ;" 分隔
  •    B、B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数
  •    C、C. 在C程序中,无论是整数还是实数都能正确无误地表示
  •    D、D. 在C程序中,%是只能用于整数运算的运算符
我的答案:C  此题得分:2.5分

3.(2.5分) 以下不正确的C语言标识符是() 。

  •    A、A. ABC
  •    B、B. abc
  •    C、C. a_bc
  •    D、D. ab.c
我的答案:D  此题得分:2.5分

4.(2.5分) 下列字符串是标识符的是:()。

  •    A、A. _HJ
  •    B、B. 9_student
  •    C、C. long
  •    D、D. LINE 1
我的答案:A  此题得分:2.5分

5.(2.5分) 以下说法中正确的是()。

  •    A、A. C语言程序总是从第一个定义的函数开始执行
  •    B、B. 在C语言程序中,要调用的函数必须放在main()函数中定义
  •    C、C. C语言程序总是从main()函数开始执行
  •    D、D. C语言程序中的main()函数必须放在程序的开始部分
我的答案:C  此题得分:2.5分

6.(2.5分) 在C语言中,字符型数据在内存中以()形式存放。

  •    A、A. 原码
  •    B、B. BCD码
  •    C、C. 反码
  •    D、D. ASCII码
我的答案:D  此题得分:2.5分

7.(2.5分) 若有定义:int a=7; float x=2.5; y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。

  •    A、A. 2.500000
  •    B、B. 2.750000
  •    C、C. 3.500000
  •    D、D. 0.000000
我的答案:A  此题得分:2.5分

8.(2.5分) 设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为() 。

  •    A、A. float
  •    B、B. char
  •    C、C. int
  •    D、D. double
我的答案:D  此题得分:2.5分

9.(2.5分) 以下()是不正确的转义字符。

  •    A、A. ' \\'
  •    B、B. ' \n'
  •    C、C. ' 081'
  •    D、D. ' \0'
我的答案:C  此题得分:2.5分

10.(2.5分) 字符串" \\\" ABC\" \\" 的长度是()。

  •    A、A. 11
  •    B、B. 7
  •    C、C. 5
  •    D、D. 3
我的答案:B  此题得分:2.5分

11.(2.5分) 若x是int型变量,y是float型变量,所用的scanf调用语句格式为:scanf(" x=%d,y=%f" ,& x,& y); 则为了将数据10和66.6分别赋给x和y,正确的输入应是()。

  •    A、A. x=10,y=66.6< 回车>
  •    B、B. 10 66.6< 回车>
  •    C、C. 10< 回车> 66.6< 回车>
  •    D、D. x=10< 回车> y=66.6< 回车>
我的答案:A  此题得分:2.5分

12.(2.5分) 若有定义double x=1,y;则y=x+3/2; printf(“%f”,y);的结果是()。

  •    A、A.2.500000
  •    B、B.2.5
  •    C、C.2.000000
  •    D、D.2
我的答案:C  此题得分:2.5分

13.(2.5分) 若x=0,y=3,z=3,以下表达式值为0的是()。

  •    A、A. !x
  •    B、B.x< y? 1:0
  •    C、C. x%2& & y==z
  •    D、D. y=x||z/3
我的答案:C  此题得分:2.5分

14.(2.5分) 以下运算符中优先级最高的为()。

  •    A、A. & &
  •    B、B. !
  •    C、C. !=
  •    D、D. ||
我的答案:B  此题得分:2.5分

15.(2.5分) 若w=1,x=2,y=3,z=4,则条件表达式w< x?w:y< z?y:z的结果为()。

  •    A、A. 4
  •    B、B. 3
  •    C、C. 2
  •    D、D. 1
我的答案:D  此题得分:2.5分

16.(2.5分) 分析以下程序, 下列说法正确的是()。 void main() { int x=0,a=0,b=0; if(x=a+b) printf(" * * * *\n" ); else printf(" # # # #\n" ); }

  •    A、A. 有语法错,不能通过编译
  •    B、B. 通过编译,但不能连接
  •    C、C. 输出* * * *
  •    D、D. 输出# # # #
我的答案:D  此题得分:2.5分

17.(2.5分) 程序段如下: int k=5;do{k--;}while(k< =0); 则以下说法中正确的是()。

  •    A、A. 循环执行5次
  •    B、B. 循环是无限循环
  •    C、C. 循环体语句一次也不执行
  •    D、D. 循环体语句执行一次
我的答案:D  此题得分:2.5分

18.(2.5分) 设i和x都是int类型,for(i=0,x=0;i< =9& & x!=876;i++) scanf(" %d" ,& x); 则for循环语句()。

  •    A、A. 最多执行10次
  •    B、B. 最多执行9次
  •    C、C. 是无限循环
  •    D、D. 循环体一次也不执行
我的答案:A  此题得分:2.5分

19.(2.5分) for(i=0,k=-1;k=1;i++,k++) printf(" * * * *" );该循环语句()。

  •    A、A. 判断循环结束的条件非法
  •    B、B. 是无限循环
  •    C、C. 只循环一次
  •    D、D. 一次也不循环
我的答案:B  此题得分:2.5分

20.(2.5分) 程序段: int k=-20;while(k=0) k=k+1; 则以下说法中正确的是()。

  •    A、A. while循环执行20次
  •    B、B. 循环是无限循环
  •    C、C. 循环体语句一次也不执行
  •    D、D. 循环体语句执行一次
我的答案:C  此题得分:2.5分

21.(2.5分) 下列程序段执行后k值为()。 int k=0,i,j; for(i=0;i< 5;i++) for(j=0;j< 3;j++) k=k+1 ;

  •    A、A. 15
  •    B、B. 3
  •    C、C. 5
  •    D、D. 8
我的答案:A  此题得分:2.5分

22.(2.5分) 程序段如下,以下说法中不正确的是()。 void main() { int k=2,; while(k< 7) { if(k%2) { k=k+3; printf(“k=%d\n”,k); continue; } k=k+1; printf(“k=%d”,k); } }

  •    A、A. k=k+3;执行一次
  •    B、B. k=k+1;执行2次
  •    C、C. 执行后k值为7
  •    D、D. 循环体只执行一次
我的答案:D  此题得分:2.5分

判断题 (共18道题)

收起

23.(2.5分) 设int a=12; 则表达式a/=a+a的值是0.5。

  •    正确
  •    错误
我的答案:错误  此题得分:2.5分

24.(2.5分) 表达式x=(a=3,6*a)和表达式x=a=3,6*a分别是赋值表达式和逗号表达式,两个表达式执行完x值分别是18和3。

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

25.(2.5分) 在C语言中,运算符的优先级最小的是逗号运算符。

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

26.(2.5分) " %-ms" 表示如果串长小于m,则在m列范围内,字符串向左靠,右补空格。

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

27.(2.5分) 当a=3,c=3时,表达式 a==c的值为3

  •    正确
  •    错误
我的答案:错误  此题得分:2.5分

28.(2.5分) 数学公式y=-6xz+5[2(a-5)+3]写成C语言表达式是y=-6*x*z+5*[2*(a-5)+3]

  •    正确
  •    错误
我的答案:错误  此题得分:2.5分

29.(2.5分) 定义 int x=10,y,z;执行y=z=x;x=y==z后,变量x的值为1。

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

30.(2.5分) break语句可用于循环语句和if语句中。

  •    正确
  •    错误
我的答案:错误  此题得分:2.5分

31.(2.5分) include < stdio.h> void main() { int a=-1,b=4,k; k=(a++< =0)& & (!(b--< =0)); printf(" %d,%d,%d\n" ,k,a,b); } 该程序运行结果是:1,0,3

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

32.(2.5分) void main() { int x=1,y=1,z=10; if(z< 0) if(y> 0) x=3; else x=5; printf(" %d," ,x); if(z=y< 0) x=3; else if(y==0) x=5; else x=7; printf(" %d," ,x); printf(" %d," ,z); } 该程序运行结果是:1,7,0

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

33.(2.5分) void main() { char x=‘B’; switch(x) { case ‘A’: printf(“A”); case ‘B’: printf(“B”); case ‘C’: printf(“C”); default: printf(“other”); } } 该程序运行结果是:Bcother

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

34.(2.5分) void main() { int num=0; while(num< =2) { num++; printf(" %d" ,num);} } 该程序运行结果是:123

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

35.(2.5分) 下面程序,当输入为:" abc?" 时,执行结果是:abc #include < stdio.h> void main() { char c; c=getchar(); while (c!=' ?' ) { putchar(c); c=getchar();} }

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

36.(2.5分) void main() { int i; for(i=1;i< =5;i++) { if(i%2) putchar(‘< ’); else continue; putchar(‘> ’); } putchar(‘#’); } 该程序运行结果是:< > < > < > #

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

37.(2.5分) void main() { int i,j; for(i=0;i< =3;i++) { for(j=0;j< =i;j++) printf(" (%d,%d)," ,i,j); printf(" \n" ); } } 该程序运行结果是: (0,0), (1,0),(1,1), (2,0),(2,1),(2,2), (3,0),(3,1),(3,2),(3,3),

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

38.(2.5分) void main() { int i,s ; for(i=2;i< =100;i+=2 ) s+=i; } 以上程序的功能是计算2+4+6+8+...+98+100。

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

39.(2.5分) 某铁路线上有若干个车站,需要准备几种车票满足所有的出行需要,可通过以下程序求得: void main() { int i,j,station,total=0; printf(" 输入车站数:" ); scanf(" %d" ,& station); for (i=1;i< station ;i++) for (j=i+1;j< =station;j++) total= total+2; printf(" 车票种类=%d \n" ,total); }

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分

40.(2.5分) 以下程序的功能是判断一个数是否是素数 #include < math.h> void main( ) { int m,i; scanf(" %d" ,& m); for(i=2;i< =sqrt(m);i++) if(m%i==0) break; if(i> sqrt(m)) printf(“%d 是素数" ,m); else printf(“%d 不是素数" ,m); }

  •    正确
  •    错误
我的答案:正确  此题得分:2.5分
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值