C语言百日刷题第十三天

news2025/1/13 7:49:50

前言

今天是刷题第13天,放弃不难,但坚持一定很酷~

临近期末,再刷一套模拟题


在这里插入图片描述

C语言百日刷题第十三天

  • 前言
  • 选择题
  • 判断题
  • 编程题

选择题

1.若由定义int*p1,*p2,m=5,n;以下赋值语句都正确的选项是()
A、p1=&m;p2=&n;*p2=*p1
B、p1=&m;*p2=*p1
C、p1=&m;p2=&p1
D、p1=&m;*p1=*p2

正确选项:A

int *p1,*p2的意思是定义两个指针,名字为p1和p2,指针需要指向的是地址。而BCD并未初始化p2指针

2.以下选项中,与k=n++完全等价的表达式是()
A、k=n,n=n+1
B、k=++n
C、n=n+1,k=n
D、k+=n+1

正确选项:A

n++是先给值,后自加。所以等价于k=n,n=n+1

3.以下错误的语句是()
A、char word []={"china"};
B、char word []='china';
C、char word []="china";
D、char word []={'c','h','i','n','a'};

正确选项:B

单引号只能括一个字符

4.设a=1;b=2;c=3;d=4;则表达式a<b?a:c<d? a:d的结果是____。
A、3
B、1
C、4
D、2

正确选项:B

三目运算符a?b:c的意思是,如果表达式a对则执行b否则执行c。
本题中:a<b是对的,所以执行a,而a=1,所以该表达式的结果为1

5.以下叙述正确的是()
A、C语言中的函数不可以单独进行编译
B、C语言的源程序不必通过编译就可以直接运行
C、C语言程序经编译形成二进制代码可以直接运行
D、C语言中的每条可执行语句最终都将被转为二进制的机器指令

正确选项:D

如果说每条语句都能被转化为二进制那就是错的(注释不会被执行)。但是每条可执行语句被转化为二进制机器指令是对的

6.以下关于运算符的优先顺序的描述正确的是()
A、逻辑与运算符<关系运算符<算术运算符<赋值运算符
B、赋值运算符<逻辑与运算符<关系运算符<算术运算符
C、算术运算符<关系运算符<赋值运算符<逻辑与运算符
D、关系运算符<算术运算符<赋值运算符<逻辑与运算符

正确选项:B
C语言中:赋值运算符<逻辑运算符<关系运算符<算术运算符

7.以下程序的输出结果为:

void main()
{
	for (int x = 2; x < 5;)
		printf("%d ", ++x);
}

A、3 4 5
B、3 4
C、2 3
D、2 3 4

正确选项:A
++x是先自加,后给值

8、下列说法错误的是()
A、任何非主函数可以调用其他任何非主函数
B、主函数可以分为两个部分,主函数说明部分和主函数体
C、程序可以从任何非主函数开始执行
D、主函数可以调用任何非主函数的其函数

正确选项:C

C语言中,main函数是程序的入口,C语言只能从main函数开始执行

9.以下程序中while循环的循环次数为()

	int i = 0;
	while (i < 10)
	{
		if (i < 1)continue;
		if (i == 5)break;
		i++;
	}

A、6
B、无限次
C、1
D、10

正确选项:B

continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,所以i++一直没有被执行

10.下面说法正确的是()
A、A、B、C三个选项都是错误的
B、if语句不可以嵌套
C、if语句让程序决定是否执行特定的语句或语句快,而if else语句则让程序决定执行两条语句或者语句块中的那条语句,这种语句对于选择其中一种操作很有用。
D、if else 中的操作如果需要多余语句,需要大括号将他们括起来,否则会出现编译错误。

正确选项:C

对于的代码应该删掉或者注释掉,而不是用大括号括起来

11.若函数调用时参数为基本数据类型的变量,以下叙述正确的是
A、只有当实参与对应形参同名时才共同占有存储单元
B、实参与其对应的形参共占存储单元
C、实参将数据传递给形参后,立即释放原先占用的存储单元
D、实参与其对应的形参分别占用不同的存储单元

正确选项:B

12.设函数:ggg(float x){ printf(”%d\n”,x*x);}则函数的返回值类型为:
A、与参数X的类型相同
B、void
C、无法确定
D、int

正确选项:D

%d是int类型的占位符

13.字符串"ABC"在内存中占用的字节数为()
A、4
B、8
C、3
D、16

正确选项:A

每个字符串后面都有系统预设的结束符\0,所以ABC在内存中的实际储存形式应该为:A B C ‘\0’,一共占四个字节

14.以下程序输出结果是()

#include<stdio.h>
void main()
{
	int a = 0, j;
	for (j = 0; j < 4; j++)
	{
		switch (j)
		{
		case 0:
		case 3:
			a += 2;
		case 1:
		case2:
			a += 3;
		default:
			a += 5;
		}
	}
	printf("%d\n", a);
}

A、10
B、20
C、13
D、33

正确选项:D

这题恶心在case和2之间没有空格,所以case 2其实是不存在的,
当j=0时候执行a+=2,因为后面没有break所以,会执行完后面的所有语句。所以第一次循环结束后,a=10,第二次循环时j=1,执行完后a=18,第三次循环j=2,注意了case 2并不存在,因为它的case和2之间没有空格,不符合语法,所以这次直接执行a+=5.此时a=18+5=23,第四次循环时,j=3,从上往下走,直接+10,所以a=33

15.下面程序的输出是()

void main()
{
	int a[10] = { 1,2,3,4,5,6,7,8,9,10 },*p = a + 1;
	printf("%d\n", *(p + 2));
}

A、3
B、1
C、2
D、4

正确选项:D

* p = a+1 表明指针p指向的是数组的第二个元素 2 而p+2则让指针右移了2位,指向的是4,解引用后打印的就是4

16.已知定义x和y为double类型,则表达式x=1;y=x+3/2的值是()
A、2.5
B、2.0
C、1.5
D、1

正确选项:B

3是整型,2也是整型,3/2是整型除整型,所得到的结果应该也为整型,所以舍去小数点,所以y=1.0+1 =2.0

17.以下不能正确进行字符串赋值的语句是()
A、char str[]="good";
B、char str[]={"good!"};
C、char str[5]="good";
D、char str[5]={'g''o''o''d'};

正确选项:B

B选项之开辟了5个字节的空间,但是good!实际上需要6个字节的空间,因为系统会给他一个结束字符\0

18.以下选项中,非法的字符常量是()
A、‘a’
B、‘\t’
C、“n”
D、‘\xaa’

正确选项:C

C是字符串

19.对于 char ch ,下面输入语句正确的是_____
A、sacanf(“%c”,&ch);
B、scanf(“%c”,ch);
C、scanf(“%lf”,ch);
D、printf(“%lf”,ch);

正确选项:A

char型的占位符应该是%c,存储应该有&

20.执行下面程序输出语句后,a的值为()

int main()
{
	int a; printf("%d\n", a = 3 * 5);
}

A、65
B、10
C、15
D、20

正确选项:C

判断题

1.C代码的组织单位是函数。()

2.在对数据定义的同时赋初值时,可以不指定数组的长度。()

初始化赋值的时候,可以不写数组长度,此时你输入多少数,数组就默认为多大

3.C语言提供输入输出函数.()

C语言的输入输出函数是库函数提供的不是C语言提供的

4.函数strcpy(str1,str2)是将str2中的字符串复制导str1数组中。()

5.按变量名进行访问的形式,称为”直接访问”方式。()

6.执行switch语句是,在进行作为条件表达式求值后,将从某个匹配的标号位置起向下执行,当碰到下一个标号位置时停止执行。()

不会停止,遇见break才停止

7.一个C程序只能有一个主函数,作为程序的入口。()

8.在下面程序段中循环体将无限执行。x=-1;do{x=x*x;} while(!x);()


只会执行1次

9.字符型常量表示方式是将字符用英文的双引号包围。()

字符型常量要用单引号包围

10.switch语句在case后允许有多个语句,可以不用{}括起来。()

没遇见break函数,就会一直执行下去。

11.数组元素只能用下标法或元素名来表示。()

还可以用指针

12.不同于数学,在c中处理数据必须明确其类型。()

13.数组下标从0开始。()

14.C语言中三种循环不可以相互嵌套。()

15.C语言的特点之一就在于允许函数的递归调用。

编程题

1.用递归方法求n的阶乘。

#include<stdio.h>

long long Fac(unsigned int n)
{
	int f;
	if (n == 0 || n == 1)
		f = 1;
	else
		f = Fac(n - 1) * n;
	return (f);
}

int main()
{
	unsigned int n = 0;
	long long y = 0;
	scanf("%d", &n);
	y = Fac(n);
	printf("%lld\n", y);
	return 0;
}

需要注意的是,对于y要用长长整型,防止数据溢出。

2.用指针的方法写一函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。

#include<stdio.h>
int my_strlen(char* s)
{
    char* p = s;
    while (*p != '\0')
        p++;
    return p - s;
}
int main()
{
    char ch[30];
    scanf("%s", &ch);
    int a = my_strlen(ch);
    printf("%d\n", a);
    return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

signintech/gopdf功能介绍与代码示例

signintech/gopdf功能介绍与代码示例 PDF相关常识以及signintech/gopdf功能概览 代码示例&#xff1a; 参考&#xff1a;https://gitee.com/ixuer/gopdf_example 代码示例包括&#xff1a; 设置页面配置&#xff0c;如宽度和高度。test/font: 添加ttf字体&#xff0c;并设置…

计算机毕业设计springboot+vue基本微信小程序的快递收发小程序

项目介绍 随着Internet的发展,人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化、网络化和电子化。本文以实际运用为开发背景,运用软件工程原理和开发方法,它主要是采用java语言技术、springboot框架和微信小程序来完成对系统的设计。整个开发过程首先对…

element-ui的Dropdown下拉菜单,传递多个参数

element-ui的Dropdown下拉菜单&#xff0c;传递多个参数 原因&#xff1a; Dropdown下拉菜单只允许我们传递一个参数 解决步骤: 在允许我们传递一个参数的哪里提前调用方法: 以前&#xff1a;<el-dropdown-item command"a"> 测试 </el-dropdown-item> 现…

一文揭密字节跳动薪资职级,资深测试开发居然能拿......

曾经的互联网是PC的时代&#xff0c;随着智能手机的普及&#xff0c;移动互联网开始飞速崛起。而字节跳动抓住了这波机遇&#xff0c;2015年&#xff0c;字节跳动全面加码短视频&#xff0c;从那以后&#xff0c;抖音成为了字节跳动用户、收入和估值的最大增长引擎。 自从字节逐…

Docker 基础和常用命令总结

一&#xff0c;Docker 简介 1.1&#xff0c;什么是 Docker1.2&#xff0c;Docker 与虚拟机的区别1.3&#xff0c;Docker 架构1.4&#xff0c;为什么用 Docker 二&#xff0c;Docker 基本概念 2.1&#xff0c;镜像2.2&#xff0c;容器2.3&#xff0c;仓库 三&#xff0c;Docker …

【记录】网站变灰色怎么实现?

最近&#xff0c;大家应该注意到了&#xff0c;各大网站和APP都变成灰色了。原因也很简单&#xff0c;一般在清明节、全国哀悼日、大地震的日子、以及一些影响力很大的伟人逝世或纪念日的时候使用&#xff0c;使用后的网站的网页变成灰色(黑白色)&#xff0c;以表示对逝者的悼念…

补贴来了 | 人社部:获得这些证书,国家有补贴

近期&#xff0c;人社部等3部门发布《关于做好失业保险稳岗位提技能防失业工作的通知》&#xff0c;通知提出拓宽技能提升补贴受益范围&#xff1a; 1.领取失业保险金人员取得职业资格证书或职业技能等级证书的&#xff0c; 可按照初级(五级)不超过1000元、中级(四级)不超过150…

流程引擎activiti太难?(看这篇就够了)

一、工作流介绍 1、概念 工作流(Workflow)&#xff0c;就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程&#xff0c;从而实现某个预期的业务目标&#xff0c;或者促使此目标的实现”。 …

[附源码]Python计算机毕业设计Djang基于vuejs的文创产品销售平台app

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

MPLS协议介绍

MPLS介绍 1.MPLS协议概述 MPLS根据自己的标签交换&#xff0c;需要给数据包先写上自己的标签&#xff0c;然后设备才能查看标签之后就转发&#xff0c;此标签是需要在原有的数据包的基础上加进去的&#xff0c;并没有将以前的包头删除&#xff0c;MPLS的标签加在了第二层帧的…

数据仓库规范建设指南

数据仓库规范建设指南 1.数仓公共开发规范 1.1 层次调用规范 稳定业务按照标准的数据流向进行开发&#xff0c;即ODS-> DWD-> DWS-> APP。 非稳定业务或探索性需求&#xff0c;可以遵循ODS-> DWD->APP或者ODS-> DWD-> DWM-> APP 两个模型数据流。 …

国际物流概述:国际物流的流程是什么?

国际运输有很多参与者:航运公司、预订代理、国际货运代理和报关行;本文主要介绍托运人、收货人、国际货运代理和航运公司这四大LCL运输的参与者。从托运人到收货人的货物运输有五个物理流程和两个单证流程&#xff0c;每次装运都需要进行。每个流程都有相关的费用&#xff0c;必…

windows系统安装opencv2.4.12及bug解决

目录前言一、opencv2.4.12安装二、BUG修复1、问题解决&#xff1a;找不到MSVCR100.dll,无法继续执行代码2、问题解决&#xff1a;无法定位程序输入点******于动态链接库opencv_highgui2412.lib上前言 最近在学习CUDA&#xff0c;对照cuda by example一书的例子对照实验&#x…

深入理解Linux网络技术内幕(一)——基础介绍

文章目录前言简介基础术语常见的编码模式内存缓存缓存和hash表引用计数垃圾收集函数指针和虚拟函数表&#xff08;VFT&#xff09;goto语句向量(数组)定义条件指示指令&#xff08;#ifdef及其系列指令&#xff09;条件检查的编译期间最优化互斥主机和网络之间的字节次序转换捕获…

C#学习记录——软件工程师必备素养与技能

『聪明是一种天赋&#xff0c;而善良是一种选择。』—— 网络 1、软件工程师的基本素养 2、个人素质必修课程 3、项目开发流程 具备了良好的个人素质和基础的编程知识&#xff0c;作为一名优秀的开发人员&#xff0c;还应熟悉一个软件项目怎么开展工作&#xff0c;这就是项目…

木字楠后台管理系统开发(1):SpringBoot项目初始化并引入基础文件

&#x1f3b6; 文章简介&#xff1a;木字楠后台管理系统(1)&#xff1a;SpringBoot项目初始化并引入基础文件 &#x1f4a1; 创作目的&#xff1a;为了带大家完整的体验木字楠后台管理系统模版的开发流程 ☀️ 今日天气&#xff1a;天气☁️很好。太阳晒在身上暖暖的 &#x1f…

ChatGPT到底是个啥?它会让我们失业么?

谈起AI届&#xff0c;几家大公司是无论如何都不能不提及的&#xff0c;谷歌的GoogleX与DeepMind (下围棋那个)、Meta的FAIR (Resnet提出者恺明所就职的)、OpenAI (搞大模型的领先公司&#xff0c;代表作是GPT&#xff0c;对标谷歌的Bert)、亚马逊 (中国AI研究生的实际导师李沐大…

正厚干货 软件测试用例设计方法之一_等价类划分

今天开始我们学习关于软件测试用例的设计方法。其中较为常用的是等价类划分发&#xff0c;那么我们就从等价类划分开始吧。一、等价类划分的介绍1.定义 把所有可能输入的数据&#xff0c;即程序的输入域划分策划国内若干部分&#xff08;子集&#xff09;&#xff0c;然后从每一…

数据处理技巧(9):MATLAB将多个矩阵放在同一行显示,并写入txt文件

MATLAB将多个矩阵放在同一行显示&#xff0c;并写入txt文件生成效果要打印的矩阵代码思路记录程序运行时间写入文档MATLAB程序生成效果相关链接记得点个赞再走~~~生成效果 将9个矩阵显示在MATLAB命令行窗口中&#xff0c;一行有3个矩阵&#xff0c;一列显示3个矩阵&#xff0c…

[附源码]JAVA毕业设计网上拍卖系统(系统+LW)

[附源码]JAVA毕业设计网上拍卖系统&#xff08;系统LW&#xff09; 项目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&…