C语言习题:数据类型和作用域

以下选项中,不能作为合法常量的是 __________

A)1.234e04    B)1.234e0.4
C)1.234e+4    D)1.234e0

答案:B

科学技术法e后面不能使用小数

以下定义变量并初始化错误的是_____________。

     A)     char   c1 =  ‘H’ ;

     B)     char   c1 =  99 ;  

     C)     char   c1 = ‘2’;

     D)     char   c1 =  09 ;

答案:D

A、C正确定义,B在ASCII码范围内,D输入的数字可能是八进制,但是八进制没有大于7的数字,所以,D是错误的

以下定义变量及初始化错误的是__________。

     A)     int   a=3,b;

     B)     int   a, b=3;

     C)     int   a, b,  c=d=3;

     D)     int   a=3, b=3;

答案:C

分析:逗号的作用是从左到右依次执行,c=d=3,会被先执行c=d,但是d没有被定义,所以出错

设有如下程序:( )

#include "stdio.h"

int  main()

{

          int   a,  b;

          a = 077;  

          b= a/5;   

          printf( "%d  %d \n" ,  a ,  b);

}

A)     77,   15.2

B)     77,   15

C)     63,   12.2   

D)     63,   12

答案:C

分析:077是八进制数字,实际是63

有以下程序

main()
{   int  m,n,p;
   scanf("m=%dn=%dp=%d",&m,&n,&p);
   printf("%d%d%d\n",m,n,p);
}

若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是 _______
A)m=123n=456p=789

B)m=123  n=456  p=789
C)m=123,n=456,p=789
D)123   456   789

答案:A

分析:输入要求格式一致,否则无法识别

以下程序的正确结果是________

#include<stdio.h>

void  num()

{

         extern int x,y; int a=15,b=10; 

 x=a-b;  

y=a+b; 

}

int   x,  y;  

int  main()

{

    int a=7,b=5;

x=a+b; 

y=a-b;    

num();

printf("%d,%d\n",x,y); 

}

A)  12,2    B)  不确定   C)  5,25  D)  1,12

答案:C

分析:xy是全局变量,当函数继承时,也就是直接引用了,会计算出结果,全局变量不会随函数结束而消失

有以下程序  

#include  <stdio.h>

int fun(  )

{

static int x=1;

x*=2;   

return x;

}

int  main(  )

{

int i,  s=1;

s*= fun();

s*=fun();

s*=fun();

printf("%d\n",s);

}

程序运行后的输出结果是

A)8   B)16   C)32   D)64

答案:D

static时静态变量,生命周期是跟着整个程序,不会随函数结束而释放,所以fun运行三遍,结果是2,4,8,当其s三次的值分别为2,8,64

以下程序运行时若从键盘输入:10  20  30<回车>。输出结果是

#include  <stdio.h>
main()
{     int  i=0,j=0,k=0;
      scanf("%d%*d%d",&i,&j,&k);   
      printf("%d%d%d\n",i,j,k);
}

答案:10 30 0 

分析:%*d是跳过当前输入的值,使一个输入无效化,也就是当输入在输入三个值时,第二个值无效化,记录第三个值,所以scanf记录了i和j的值,k并没有赋值

以下程序运行的结果是___________。

main( ){

        int a=1, b=2, c=3;

        ++a;  //a=a+1     //a = 2

        c+=++b;          //b = 3 c = 6

           {

             int  b=4,  c;

              c=b*3;      //c = 12

              a+=c;       //a = 14

              printf(“first: %d,%d,%d\n”, a,b,c);            //14,4,12

                a+=c;      //a = 26

              printf(“second: %d,%d,%d\n”, a,b,c);     //26,4,12

             }

printf(“third: %d,%d,%d\n”, a,b,c);   //26,3,6

}

答案:first:14,4,12   second:26,4,12   third:26,4,12

分析:要明确局部变量,在内部的{}中定义了b和c对main函数来说是局部变量,所以b,c在{}里面的改变不影响外面的值,所以在第三次输出中b,c分别是3,6

编写程序,用getchar函数读入两个字符给变量c1、c2,然后分别用putchar函数和printf函数输出这两个字符,并思考一下以下问题

  (1)变量c1、c2应定义为字符型或整型?还是二者皆可

  (2)要求输出c1和c2值的ASCII码,应如何处理?用putchar函数还是printf函数?

  (3)整型变量与字符型变量是否在任何情况下都可以互相替换?

1】理论上都可以,因为字符可以用整形的ASCII码表示,但是字符有范围限制,用int可能会越界,导致输出错误

2】只能使用printf函数,因为putchar只能输出字符

3】与第一题类似,保证范围正确,都可以相互转换

使列举static关键字的几个作用 

限制作用域,延长生命周期,默认初始值为0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/885385.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

rpm方式安装jdk1.8

1、查询系统中是否已经安装jdk rpm -qa |grep java 或 rpm -qa |grep jdk 2、卸载已有的openjdk rpm -e --nodeps java-1.7.0-openjdk rpm -e --nodeps java-1.7.0-openjdk-headless rpm -e --nodeps java-1.8.0-openjdk rpm -e --nodeps java-1.8.0-openjdk-headless3、安装j…

考拉悠然携手中国系统打造城市智能中枢,让城市更聪明更智慧

在21世纪的科技浪潮中&#xff0c;智慧城市建设已成为推动城市现代化进程的重要引擎。随着人工智能技术的飞速发展&#xff0c;AI正以前所未有的速度融入智慧城市管理的每一个角落&#xff0c;从交通出行到公共安全&#xff0c;从环境保护到城市管理&#xff0c;无一不彰显着智…

2.1 HuggingFists系统架构(二)

部署架构 上图为HuggingFists的部署架构。从架构图可知&#xff0c;HuggingFists主要分为服务器(Server)、计算节点(Node)以及数据库(Storage)三部分。这三部分可以分别部署在不同的机器上&#xff0c;以满足系统的性能需求。为部署方便&#xff0c;HuggingFists社区版将这三部…

生产环境升级mysql流程及配置主从服务

之前写到过mysql升级8.4的文章, 因此不再介绍mysql的安装过程 避免服务器安装多个mysql引起冲突的安装方法_安装两个mysql会冲突吗-CSDN博客 生产环境升级mysql8.4.x流程 安装mysql 参考之前文章: 避免服务器安装多个mysql引起冲突的安装方法_安装两个mysql会冲突吗-CSDN博客…

尚硅谷MyBatis笔记

Mybatis简介 MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下&#xff0c;iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到GithubiBatis一词来源于“intern…

yolov8/9/10模型在仪表盘、指针表检测中的应用【代码+数据集+python环境+训练/应用GUI系统】

可视化训练系统 可视化应用系统 yolov8/9/10模型在仪表盘、指针表检测中的应用【代码数据集python环境训练/应用GUI系统】 背景意义 随着科学技术的快速发展&#xff0c;机器视觉以及人工智能等技术逐渐从理论走向实践&#xff0c;并在各个领域得到广泛应用。机器视觉检测系统…

使用powershell的脚本报错:因为在此系统中禁止执行脚本

1.添加powershell功能环境&#xff1a; 2.启动powershell的执行策略 因为在此系统中禁止执行脚本。 set-executionpolicy unrestricted

若依生成主子表

一、准备工作 确保你已经部署了若依框架&#xff0c;并且熟悉基本的开发环境配置。同时&#xff0c;理解数据库表结构对于生成代码至关重要。 主子表代码结构如下&#xff08;字表中要有一个对应主表ID的字段作为外键&#xff0c;如下图的customer_id&#xff09; -- ------…

springboot 集成 camunda

项目地址&#xff1a; stormlong/springboot-camundahttps://gitee.com/stormlong/springboot-camunda 官网集成引导 进入官网 https://camunda.com/ 选择 camunda7 滑倒页面底部 进入 getStart 页面 https://start.camunda.com/ 点击 GENERATE 下载导入 idea 即可 流程设计…

水波荡漾效果+渲染顺序+简单UI绘制

创建场景及布置 创建新场景Main,在Main场景中创建一个plane物体&#xff0c;命名为WaterWavePla,具体数值及层级面板排布如下&#xff1a; 编写脚本 创建一个文件夹&#xff0c;用于存放脚本&#xff0c;命名Scripts,创建一个子文件夹Effect,存放特效相关脚本&#xff0c;创建…

grafana全家桶-loki promtail收集k8s容器日志

loki是grafana旗下轻量级日志收集工具&#xff0c;为了减少loki对集群的影响&#xff0c;把loki的agent日志收集端promtail部署在k8s集群中&#xff0c;loki server部署在集群外面。这样简单做一个解耦&#xff0c;避免大量读写的应用影响到集群内业务服务。 一、promtail部署…

Transformer算法7个面试常见问题

1.Transformer为何使用多头注意力机制&#xff1f;&#xff08;为什么不使用一个头&#xff09; 英文论文中是这么说的&#xff1a; Multi-head attention allows the model to jointly attend to information from different representation subspaces at different position…

1.1.5 计算机网络的性能指标(上)

信道&#xff1a; 表示向某一方向传送信息的通道&#xff08;信道&#xff01;通信线路&#xff09;一条通信线路在逻辑上往往对应一条发送信道和一条接收信道。 速率&#xff1a; 指连接到网络上的节点在信道上传输数据的速率。也称数据率或比特率、数据传输速率。 速率单…

(二)大模型调用

一、基本概念 1.1、Prompt 大模型的所有输入&#xff0c;即&#xff0c;我们每一次访问大模型的输入为一个 Prompt&#xff0c; 而大模型给我们的返回结果则被称为 Completion。 1.2、Temperature LLM 生成是具有随机性的&#xff0c;在模型的顶层通过选取不同预测概率的预测结…

职称评审难在哪?

没有项目业绩资料&#xff1f; 社保不符合&#xff1f; 看不懂评审文件&#xff1f; 申报材料不会做&#xff1f; 论文没地发表&#xff1f; 有这些疑问的 评论区滴滴

[Python学习日记-33] Python 中的嵌套函数、匿名函数和高阶函数

[Python学习日记-33] Python 中的嵌套函数、匿名函数和高阶函数 简介 嵌套函数 匿名函数 高阶函数 简介 在 Python 当中函数除了能减少重复代码、扩展性强和易维护外&#xff0c;其实还有挺多不通的玩法的&#xff0c;例如嵌套函数、匿名函数、高阶函数等&#xff0c;它们是…

毕业论文设计javaweb+VUE高校教师信息管理系统

目录 一、系统概述 二、功能详解 1. 教师管理 2. 部门管理 3. 奖惩管理 4. 业绩管理 5. 培训管理 6. 报表查询 三、总结 四、示例代码 1 前端VUE 2 后端SpringBootjava 3 数据库表 随着教育信息化的发展&#xff0c;传统的手工管理方式已经不能满足现代学校对教师…

算法葫芦书(笔试面试)

一、特征工程 1.特征归一化&#xff1a;所有特征统一到一个区间内 线性函数归一化&#xff08;0到1区间&#xff09;、零均值归一化&#xff08;均值0&#xff0c;标准差1&#xff09; 2.类比型特征->数值性特征 序号编码、独热编码、二进制编码&#xff08;010&#xf…

Squaretest单元测试辅助工具使用

1、idea安装插件 Squaretest 然后关掉idea 2、安装字节码软件&#xff08;jclasslib&#xff09; 3、找到idea里面的Squaretest安装目录 找到包含TestStarter的jar包 4、打开 com.squaretest.c.f 打开后选择常量池 5、找到第16个修改 Long value值&#xff0c;修改的数字即为使…

C语言系列4——指针与数组(1)

我们开始C语言的指针与数组 这部分开始进阶了&#xff0c;得反复学习 在开始正题之前&#xff0c;写说一下我们都知道当写一个函数的时候需要进行传参&#xff0c;当实参传递给形参的时候&#xff0c;形参是有独立空间的&#xff0c;那么数组传参又是怎么样的呢&#xff0c;我…