2019年c语言题库,C语言考试题库

发布时间:2023-12-08

2019年C语言题库, C语言考试题库

更新:2023-01-08 23:15

本文目录一览:

  1. |C语言简单题| int x=2 ,y=0,z=19 经过一下执行后?
  2. C语言。19题
  3. 蓝桥杯C语言题目
  4. C语言的逻辑题

|C语言简单题| int x=2 ,y=0,z=19 经过一下执行后?

下面是我的分析:

  • x=y 表达式为真
  • !(x=y) 取反,因此整个 if 表达式为假,转而执行 else 语句
  • z=x*y,即 z=0
  • z=x+2019,即 2+2019=2021
  • 执行 printf 语句,输出 z 的值应该为 2021,答案是 B 吧。

C语言。19题

A 选项中,str 已经被定义为字符数组,注意,str 被定义为数组,是数组,重要的事情说三遍;而 C99 标准中不允许将字符串(实际上是一个指针变量)赋值给数组,所以将 "I am a boy!" 这个指针赋值给数组类型的 str 时,编译器会直接报语法错误:
[Error] assignment to expression with array type

蓝桥杯C语言题目

#include <stdio.h>
int main() {
    char code[] = {'Z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y'};
    char num[10];
    int sgln = 0, sang, yu, len = 0;
    sang = 2019 / 26;
    yu = 2019 % 26;
    num[len] = code[yu];
    len++;
    while (sang != 0) {
        if (sang != 0 && yu == 0)
            yu = (sang - 1) % 26;
        else
            yu = sang % 26;
        sang = sang / 26;
        num[len] = code[yu];
        len++;
    }
    len--;
    for (; len >= 0; len--) {
        printf("%c", num[len]);
    }
    return 0;
}

C语言的逻辑题

  1. 0;因为 a + b < c 为真,逻辑值是 1,但 b == c 为假,逻辑值是 0&& 表示“且”,所以该式值为 0
  2. 1;因为 a 不为 0,所以逻辑式 a 为真,同理 b + c 也为真,b - c 也为真,所以该式值为 1
  3. 1;因为 a < b 为假,所以 !(a < b) 为真,c 值不为零,所以 !c 的逻辑值是零,|| 表示“或”,1 || 0 || 11
  4. 0;看后面 0 就知道了是 0 了。
  5. 1!(a + b) 的逻辑值是 0,所以 !(a + b) + c - 1 == 0 + 5 - 1 == 4 != 0,而 b + c / 2 也不为零,所以该式为真。