我是靠谱客的博主 安静翅膀,最近开发中收集的这篇文章主要介绍第一次单元测验参考答案详解 mooc程序设计入门——翁凯,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

第一次单元测验

1.单选(3分)下面程序段的输出结果是?

下面程序段的输出结果是?
int k;
while(k!=0) k=k-1;
printf(“%d”, k);

1.单选(3分)以下哪个选项是判断ch是否为大写字母的正确形式?

2.单选(3分)以下表达式  x&&1 用在 if 的条件中时,和哪个是等价的:

【分析:】  当x  非0时 x&&1 为真=1 ;当x为0 时,x&&1 为假=0, 对于 x !=0 :当x  非0时成立是结果为真=1  当x为0时,x !=0 不成立 为假 结果=0

2单选(3分)以下代码片段的输出是:

#include <stdio.h>
int main(){
int j=4;

for ( int i=4; i<=8; i++ ) {
    switch ( i/4 ) {
    case 0:
    case 1: printf("*"); break;
    case 2: printf("#");
    }
}
    
    return 0;
}

i=4 j=4 
4/4=1 
5/4=1 
6/4=1 
7/4=1 
8/4=2 

 

3.单选(3分)以下哪个不是C语言的关键字?

【分析:】“include”不是C语言关键字,是预处理命令。

【拓展:】include是一个计算机专业术语,表示包含C/C++标准输入输出头文件的预处理命令,用于将指定头文件嵌入源文件中。不仅仅限于.h头文件,可以包含任何编译器能识别的C/C++代码文件,包括.c、.hpp、.cpp、.hxx、.cxx等,甚至.txt、.abc等等都可以。

4.单选(3分) 对于以下代码:

5.单选(3分)在代码:while ( !e )中,!e等价于:

【分析:】这题感觉出的不是很严谨啊,都不知道e是什么  ,只能靠假设法:或者理解为要让 !e 的值为1的值就是和条件等价的值。

对于选项A.  假设 e  不等于 1 , 只要e不等于0,  !e 的值就是0,与假设矛盾。

对于选项B.  若e 等于1,则 !e 的值就是0  ,与假设矛盾。

对于选项C.  若 e 不等于0 ,则  !e  的值还是0 ,与假设矛盾。

对于选项D.  若e 等于0  ,则 !e 的值就是1  ,此时while ( !e )的条件值为 真=1。

5单选(3分)对于以下代码:unsigned short sht = 0;sht --;执行后,sht的值是?

6.单选(3分)下列可用于C语言程序标识符的一组是(名字间以逗号分隔):

6单选(3分)以下哪个直接量是十进制的124?

7.单选(3分)对for(表达式1;;表达式3)可理解为

8.单选(3分)对于以下代码:int i,j=6;以下哪句话是对的?

9.单选(3分)对于以下代码:char ch = -1;printf("%dn", ch);输出结果是?

10.单选(3分).对于以下代码:  哪句话是对的?

int i=6;
do {
    printf("%d", i--);
} while (0);

11.填空(3分)表达式ch =‘B’+‘8’-‘3’表示的字符是:

12填空(3分)以下代码的输出是 _____.

int x=0, y=0, z=0;
z = (x==1) && (y=2);
printf("%d ", y);

13.填空(3分)以下代码段的结果是:

对应测试代码:sizeof是运算符,但不会对表达式进行计算。。。很多公司面试题中出现过

#include <stdio.h>
#include <stdlib.h>
 
int main()
{
    int i;
    i = 10;
    printf("i : %dn",i);
    printf("sizeof(i++) is: %dn",sizeof(++i));
    printf("i : %dn",i);
    return 0;
}
————————————————
===============================
结果:
i : 10
sizeof(i++) is: 4
i : 10

版权声明:本文为CSDN博主「i丹明扬」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Bill_Ming/article/details/8011006

 

aaaaaa

14填空(3分)表达式(double)(10/4*4) 的结果是_____

15填空(3分)以下代码的输出是 :int i,x,y; i=x=y=0; do { ++i; if ( i%2 ) x+=i, i++; y +=i++; } while ( i<=7 ); printf("%d %d %d", i, x, y);

测试程序:

#include <stdio.h>
int main(){
    int i,x,y;	
    i=x=y=0;
    do {
        ++i;
        printf("++i中的i的值为:%dn",i);
        if ( i%2 ) {
            x+=i,i++;   //此处x+ = i后面是逗号。
            printf("x += i中的x的值为:%dn",x);
            printf("i++中的i的值为:%dn",i);
        }
        y +=i++;
        printf("y += i++中的y的值为:%d ;i的值为:%dn",y,i);
    } while ( i<=7 );
    printf("%d %d %d", i, x, y);
    
    return 0;
}
========================================
$ ./main
++i中的i的值为:1
x += i中的x的值为:1
i++中的i的值为:2
y += i++中的y的值为:2 ;i的值为:3
++i中的i的值为:4
y += i++中的y的值为:6 ;i的值为:5
++i中的i的值为:6
y += i++中的y的值为:12 ;i的值为:7
++i中的i的值为:8
y += i++中的y的值为:20 ;i的值为:9
9 1 20Program exited with status 0

容易理解错的一种是:

#include <stdio.h>
int main(){
    int i,x,y;	
    i=x=y=0;
    do {
    	++i;
    	printf("++i中的i的值为:%dn",i);
    	if ( i%2 ) {
    	    x+=i;//此处是分号
    	    printf("x += i中的x的值为:%dn",x);
    	}
    	i++;
    	printf("i++中的i的值为:%dn",i);
    	y +=i++;
    	printf("y += i++中的y的值为:%d ;i的值为:%dn",y,i);
    } while ( i<=7 );
    printf("%d %d %d", i, x, y);

	return 0;
}
===============================================
$ ./main
++i中的i的值为:1
x += i中的x的值为:1
i++中的i的值为:2
y += i++中的y的值为:2 ;i的值为:3
++i中的i的值为:4
i++中的i的值为:5
y += i++中的y的值为:7 ;i的值为:6
++i中的i的值为:7
x += i中的x的值为:8
i++中的i的值为:8
y += i++中的y的值为:15 ;i的值为:9
9 8 15Program exited with status 0

总结与收获:

逗号表达式最应用场景在变量定义的时候,其实 对于逻辑层次在一起的语句
可以直接用逗号分隔,而不需要用分号 加 大括号的方式。 这样写有利于减少语句间的括号夹杂太多。

总结:逗号表达式最应用场景在变量定义的时候,其实 对于逻辑层次在一起的语句
可以直接用逗号分隔,而不需要用分号 加 大括号的方式。 这样写有利于减少语句间的括号夹杂太多。
实际例子:
00000000000000000000000000000000
temp = a[index];
a[index] = a [i] ;
a[i] = temp ;

等价于
        temp = a[index] , a[index] = a [i] , a[i] = temp ; //表示同一层级语句

 

 

 

 

 

最后

以上就是安静翅膀为你收集整理的第一次单元测验参考答案详解 mooc程序设计入门——翁凯的全部内容,希望文章能够帮你解决第一次单元测验参考答案详解 mooc程序设计入门——翁凯所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(68)

评论列表共有 0 条评论

立即
投稿
返回
顶部