zoukankan      html  css  js  c++  java
  • 大学计算机模拟考试常见试题与解析(二)

    大学计算机模拟考试常见试题与解析(一)

    第一题

    Markdown

    答案 A

    A错在是以o开头而非0开头
    以0开头数字是表示8进制,如013表示十进制的11.

    D, 5L表示长整型的5

    第二题

    Markdown

    答案 C
    考察的是C语言的除法特性,只保留整数位,如1/2 = 0,此题用排除法较易。
    不妨设a=1,b=2;
    A 选项 a/b = 0, 0 * b = 0, 错误
    B 选项 a/b = 0,0 * b = 0 , 0/ a = 0,错误
    C 选项 a/b = 0, 0 * b = 0, 0+ a%b = 1, 1是等于a的, 正确
    D 选项 a*b = 2, 2/a = 2, 2 * b = 4,错误

    第三题

    Markdown

    答案B

    讲道理main函数还是可以调用的。真的可以自己调用,在GCC编译器下,大家可以试一试以下代码。

    #include <stdio.h>
    main()
    {
        printf("Hello World
    ");
        main();
    }
    

    结果就是屏幕上一直输出Hello World,停不下来而已。
    至于VC的编译器,不太清楚是否会编译报错。

    第四题

    Markdown

    答案B

    A 选项, 揣摩一下出题人的意图,他可能是想让你选全部初始化为0的。如果你是想让0个元素第一个为10,其余为0,这个选项是没毛病的。
    C 选项,花括号里没写值。
    D 选项,不能用小括号。

    第五题

    Markdown

    先看循环条件(y =123)&&(x < 4)
    y=123返回的值是123,在条件判断时为真,(x< 4)当且仅当x< 4时返回真。然后直接看x的值就好了。循环是,x的值为0,1,2,3,当4时(x< 4)为假,退出循环。 故为4次。

    答案B

    第六题

    Markdown

    注意数组下标是为0开始的,故数组a的实际存储情况为

    1 2 0
    3 4 0
    5 6 0

    双层for循环是求解a[1][0]+a[1][1]+a[2][0]+a[2][1]+a[2][2] = 3+4+5+6 = 18

    答案 A

    第七题

    Markdown

    scanf(“格式控制字符串”,地址表列)
    故地址表列里面需要是变量的地址

    A 选项,p已经保存了变量n的地址,此时scanf(“%d”,p)即可。&p表示的是指针p的地址,故错误。
    B 选项,* p表示对n的引用,不是地址,错误。
    C 选项,p没有进行初始化,即没有指向任何一个变量,故将n赋值给*p,是没有意义的,错误。
    D 选项,首先将p指向n,然后将m的值赋给p,即赋给n,结果导致n为5。

    * 答案 D*

    第八题

    Markdown

    在声明二维数组的时候,第二维的数量不能为空!

    答案 D

    第九题

    Markdown

    看while里面的if,当p[i]%2 !=0时为真,否则为假。故求上面数组的奇数的和即可。

    答案 C

    第十题

    Markdown

    按照题意写出a数组即可
    分别是10 9 8 7 6 5 4 3 2 1
    注意数组的下标。
    简单方法是,a[2]在上面for循环求得时候,i = 2,故a[2] = 8,同理a[5] = 5,a[8] = 2; 最后结果852

    答案 C

    第十一题

    Markdown

    %x表示以十六进制输出,%o表示以八进制方式输出。

    答案B

    注意在输入声明变量的时候如果是int a=0x10表示10是十六进制数,若是int a = 010 表示10是八进制数。

    第十二题

    Markdown

    注意C语言区分大小写,故IF不等同于if,所有的关键字(void, int break, for, while等等)都不是合法标识符。
    合法标识符不能以数字开头,以下划线或者字母开头是允许的。
    答案 A

    第十三题

    Markdown

    考察双目运算符,逗号表达式,赋值语句。
    逗号表达式,从左往右依次计算,整个表达式的值,为最后一个表达式的结果。
    首先a=2,b=5,然后判断a是否大于b,若是,a自增1,否则b自增1,显然应该是b自增1,最后整个表达式的值为a+b=2+6=8.

    答案8

    第十四题

    Markdown

    刚才十一题提到了%x表示以十六进制输出,%o表示以八进制方式输出,故先将97(a的ASCII码)转换成十六进制与八进制,然后输出。
    注意,允许地址表列中实际要输出的数据个数多,多余的将被省略。若地址表列中的个数比实际输出的少,则输出随机数字。
    第二个printf中,需要注意%%表示输出一个%,则后面的d不构成格式控制字符串%d,故会单独输出d,由于没有要求输出数字,则地址表列的k被忽略掉。

    答案C

  • 相关阅读:
    Warning! PATH is not properly set up...
    用rvm切换ruby
    Mac下多版本JDK安装
    iOS开发 密码里面含有特殊字符如何处理传给后端
    Cornerstone版本回退160013错误
    iOS 11 Xcode9 tableview点击cell上的按钮cell自动往上跳动
    iOS 获取全部字体的Fontfamily和FontName
    iOS WKWebView 点击超链接跳转至Safari
    iOS 11在window上加视图不显示
    Java并发(2)
  • 原文地址:https://www.cnblogs.com/pengwill/p/7367078.html
Copyright © 2011-2022 走看看