IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 暑假第十八天之每天一些题系列 -> 正文阅读

[C++知识库]暑假第十八天之每天一些题系列

暑假第十八天之每天一些题系列

一、选择题

  • 设有以下宏定义,则执行语句: z = 2 * (N + Y(5 + 1)); 后z的值为
#define N 3
#define Y(n) ((N+1)*n) /*这种定义在编程规范中是严格禁止的*/

A. 出错 B. 42 C. 48 D. 54

答案解析:

#define定义的符号和宏在预处理阶段完成替换,z=2*(N+Y(5+1));被替换为:z=2*(3+((3+1)*5+1));则z的值为48

  • 对于以下代码,哪种说法是正确的
int i=6;
if ( i<= 6 )
	printf("hello\n");
else
	printf("bye-bye\n");

A. 打印出 “hello”
B. 打印出 “bye-bye”
C. 不能通过编译
D. 打印出 “hello bye-bye”

答案解析:

if else语句,i<=6,则进入if语句,否则进入else语句。

  • 下列可用于C语言程序标识符的一组是(名字间以逗号分隔)
    A. For, -abc, IF
    B. For, _abc, IF
    C. 2_a, xyz, b1_s
    D. void, d, WORD

答案解析:

C语言的标识符一般应遵循如下的命名规则:
1 标识符必须以字母a~z、 A~Z或下划线开头,后面可跟任意个(可为0)字符,这些字符可以是字母、下划线和数字,其他字符不允许出现在标识符中。
2 标识符区分大小写字母
3 标识符的长度,c89规定31个字符以内,c99规定63个字符以内
4 C语言中的关键字,有特殊意义,不能作为标识符
5 自定义标识符最好取具有一定意义的字符串,便于记忆和理解。

  • 对于以下代码,输出结果是
char ch = -1;
printf("%d\n", ch);

A. 运行错误,因为 %d 和 ch 的类型不匹配
B. ASCII 码表中 255 那个位置的字符
C. 255
D. -1

答案解析:

char也是本质上也是整形,它是有符号的char,故以整形打印为-1,若是无符号的char,以整形打印为255

  • 以下哪个 for 语句是错误的
    A. for(i=0; i<10; i–);
    B. for(int i=0; i<10, j<10; i++);
    C. for(i=0; i++);
    D. for(i=0; i<10,j<10; i++);

for循环的前两部分在结束时都要加分号,没有语句也要加分号

二、填空题

  • 表达式 (double)(10/4*4) 的结果是

答案解析:

结果是:8.000000;10/4是2,2*4等于8,强制类型转换为double,故为8.000000

  • 假设所有变量均为整型,则表达式 (a=2,b=5,a++,b++,a+b) 的值为

答案解析:

此处为逗号表达式,逗号表达式的值是最后一个表达式的结果,每个表达式从左往右依次计算,a变为3,b变为4,故最后表达式值为7

  • 以下代码段的结果是
int main()
{
    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);
}

答案解析:

第一次循环下来,i=3,x=1,y=2;第二次循环下来,i=5,x=1,y=6,第三次循环后,i=7,x=1,y=12;第四次循环后,i=9,x=1,y=20。此时i>7,循环结束,故打印为9,1,20

三、算法题

题目描述:

如何判断一个数n是否是2的k次方?注意:不用求K是多少,只需要判断,请编写函数实现

思路:

2的次方的数的二进制只有一个1,n&n-1是去掉n的二进制当中的那个1,如果它是0的话说明是2的次方,否则不是

代码如下:

#include<stdio.h>
void judge_is_2pow(int n)
{
    //2的次方的数的二进制只有一个1,n&n-1是去掉n的二进制当中的那个1,如果它是0的话说明是2的次方,否则不是
    if(n&n-1)
    {
        printf("这个数不是2的次方\n");
    }
    else
    {
        printf("这个数是2的次方\n");
    }
}
int main()
{
	judge_is_2pow(4);
	return 0;
}
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-29 08:54:26  更:2021-08-29 08:54:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 17:04:35-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码