C语言基础填空题6道

简介: C语言基础填空题6道

  (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

1. 已知有声明”int a =1, b =2, c=0;“, 执行语句”if(a>b) c = a; a = b; b =c;“后变量 a的值是_____2___,b的值是____1___.

解析:

2. 十进制数35转换为二进制数为100011,那么十进制数36转换为二进制数为__100100__

解析:十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

3. 以下程序运行时输出到屏幕的结果是____2___.

#include<stdio.h>
void fun(int m, int n)
{
       if(m>=n)
            printf("%d",m);
       else
             fun(m+1,n);
        printf("%d",m);
}
void main()
{
     fun(1,2);
}

4. int a = 3 , b = 4;

则表达式 a > b ? a : b 的值为___4_

解析:三目运算符:对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值

即如果a>b则输出a,如果a<b则输出b

5.

已有以下程序段,且变量已正确定义和赋值:

for(s=1.0,k=1;k<=n;k++)
      s=s+1.0/(k*(k+1));
printf("s=%f\n",s);

请填空,使下面程序段的功能与之完全相同。

s=1.0;k=1;
while(_____k<=n___)
{
       s=s+1.0/(k*(k+1));
       ______k++______;
}
printf("s=%f\n",s);

6.

下面程序的输出是____6__。

void main()
{
struct cmplx
{
int x;
int y;
} cnum[2] = {1,3,2,7};
printf("%d\n",cnum[0].y / cnum[0].x * cnum[1].x);
}

解析:3/1*2

相关文章
|
10月前
|
机器学习/深度学习 计算机视觉
深度学习与计算机视觉的最新进展
深度学习与计算机视觉的最新进展
|
10月前
|
缓存 算法 网络协议
OSPF的路由计算算法:原理与应用
OSPF的路由计算算法:原理与应用
432 4
|
开发工具 git 开发者
解决fatal: not a git repository (or any of the parent directories): .git问题
解决fatal: not a git repository (or any of the parent directories): .git问题
2400 1
|
运维 开发者
|
API
FreeRTOS软件定时器的原理以及使用实例
FreeRTOS软件定时器的原理以及使用实例
401 0
|
关系型数据库 MySQL
mysql 动态变量,可以在线修改
7.1.9.2 Dynamic System Variables
102 0
|
Linux Go
Go语言在centos7下安装
Go语言在centos7下安装
Go语言在centos7下安装
|
存储 NoSQL Java
JDK源码系列(2)-Object类
JDK源码系列(2)-Object类
128 0
JDK源码系列(2)-Object类
|
算法
最大子序和(分治法)
语文中的总分总到了算法中是什么样的?今天带大家看看分治法。分而治之,化整为零,化繁为简,也不失为一种解决问题的良方秘药。
295 0
最大子序和(分治法)
|
SQL 关系型数据库 MySQL