牛客C/C++刷题笔记(七)

本文涵盖了C语言中的基本语法和概念,包括数组的定义与使用、指针操作、常量的#define与const区别、内存区域的理解以及函数的调用和递归。还讨论了预处理指令的作用、输入输出操作和字符串处理函数的应用。同时,文章涉及了错误的代码示例及相应的解释,帮助读者理解潜在的问题和解决方案。
摘要由CSDN通过智能技术生成

201、static char a[2]={‘1’,‘2’,‘3’};说法是否正确?
在这里插入图片描述
202、下面函数正确的是()
在这里插入图片描述
203、若已定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*prt)[3]=a,*p=a[0];则能够正确表示数组元素a[1][2]的表达式是( )
在这里插入图片描述

在这里插入图片描述
204、下列关于const和#define定义常量的区别,说法不正确的有()
在这里插入图片描述

const定义的常量只有一次拷贝没毛病,而define定义的变量在内存中并没有拷贝,因为所有的预处理指令都在预处理时进行了替换。

205、下面叙述错误的是()

char acX[]="abc";
char acY[]={'a','b','c'};
char *szX="abc";
char *szY="abc";

在这里插入图片描述

acX , acY 是2个数组,属于变量,一般存在栈区,可以修改, szX , szY 是2个指针指向常量区,常量区的东西不能被修改,所以D是错误的

206、在C语言中,

int a[10];
scanf("%d",a);

表示一次性地给数组a的10元素赋值。
在这里插入图片描述

只是对第一个元素赋值,数组名a只代表该数组的首地址。

207、先用语句定义字符型变量c,然后要将字符’a’赋给c,则下列语句中正确的是( )
在这里插入图片描述
208、下面代码会输出什么()

int main(int argc, char **argv)
{
    int a[4] = {1, 2, 3, 4};
    int *ptr = (int *)(&a + 1);
    printf("%d", *(ptr - 1));
}

在这里插入图片描述

在这里插入图片描述

209、下面的程序会打印几个hello?

#include<stdio.h>
#include<unistd.h>
 
int main(void) {
    fork();
    printf("hello\n");
    fork();
    printf("hello\n");
    while(1);
    return 0;
}

在这里插入图片描述
210、两个指针变量的值相等时,表明两个指针变量是( )
在这里插入图片描述
211、以下定义语句中正确的是()
在这里插入图片描述

在这里插入图片描述

212、以下可作为函数fopen中第一个参数的正确格式是()
在这里插入图片描述

在这里插入图片描述

213、关于C语言的sizeof,以下说法正确的是()
在这里插入图片描述

sizeof()是c语言关键字,也是求字节运算符。

214、对于代码段

t=0;
while (printf("*")) {t++; if (t<3) break;}

下面描述正确的是()

在这里插入图片描述

在这里插入图片描述

215、以下叙述中正确的是()
在这里插入图片描述
216、C 语言中,假设变量说明为:int k=1; 则语句

k--||k, k++

运算完后,k的值是?
在这里插入图片描述

在这里插入图片描述

217、下列代码执行后的输出结果为()

int main() {
    char c, s[20];
    strcpy(s, "Hello,World");
    printf("s[]=%6.9s\n", s);
    return 0;
}

在这里插入图片描述

在这里插入图片描述

218、以下程序的输出结果是()

#include <stdio.h>
int main() {
char str[]="ABCD", *p = str;
printf("%d\n", *(p + 4));
return 0;
}

在这里插入图片描述

在这里插入图片描述

219、执行下面代码段

int x=-1; 
do {
    x=x*x; 
} while (!x); 

在这里插入图片描述

220、以下函数中,和其他函数不属于一类的是____。
在这里插入图片描述

在这里插入图片描述

221、函数是一种特殊的数据类型,这句话是否正确?
在这里插入图片描述
222、在 32 位编译器上,设有定义
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

223、运行下面这段代码,会出现的情况是:()

void GetMemory(char *p) { p = (char *)malloc(100); }
 
void Test(void) {
    char *str = NULL;
    GetMemory(str);
    strcpy(str, "hello world");
    printf(str);
}

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

224、在下列运算符中,不能重载的是()
在这里插入图片描述
225、以下程序段的执行结果是( )

double x;
x = 218.82631;
printf("%-6.2e\n", x);

在这里插入图片描述

在这里插入图片描述
226、在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

227、在C语言源程序的开始处通常加上预处理命令 #include <stdio.h> 的原因是()

在这里插入图片描述

229、对于下面代码段
在这里插入图片描述
在这里插入图片描述
230、变量void (s[5])(int)表示意思为()
在这里插入图片描述
231、以二进制方式打开一个文件的方法是?
在这里插入图片描述
232、存在int类型变量x,y,z,其对应值为x=0x59,y=0x39,z=0x6E,则x
y+z的值为()
在这里插入图片描述

在这里插入图片描述

233、若有定义:int a[2][3];,以下选项中对a数组元素正确引用的是()
在这里插入图片描述
234、
在这里插入图片描述

在这里插入图片描述
235、
在这里插入图片描述
在这里插入图片描述

236、以下字符中不是转义字符的是( )
在这里插入图片描述

在这里插入图片描述

237、关于函数输入参数的正确描述都有哪些?()
在这里插入图片描述

在这里插入图片描述

238、char *p=“girl” ;的含义是定义字符型指针变量p,p的值是字符串"girl"。()
在这里插入图片描述

*p的值是girl,p的值是girl字符串的首地址

239、
在这里插入图片描述
在这里插入图片描述

240、
在这里插入图片描述
241、
在这里插入图片描述

在这里插入图片描述

242、设有定义:char *p;,以下选项中不能正确将字符串赋值给字符型指针 p 的语句是( )
在这里插入图片描述

在这里插入图片描述

243、指针就是地址,因此一个变量的指针就是该变量的地址。请问这句话的说法是正确的吗?
在这里插入图片描述

在这里插入图片描述

244、C语言程序中的整数不能是()。
在这里插入图片描述

在这里插入图片描述

245、下面表达式不能访问二维数组b的第i行第j列元素的是()
在这里插入图片描述

在这里插入图片描述
246、若有定义语句:char s[3][10],(*k)[3],*p;则以下赋值语句错误的是()
在这里插入图片描述
在这里插入图片描述

247、
在这里插入图片描述

248、已知 int i=3; 下面 do_while 语句循环次数为()

在这里插入图片描述
249、
在这里插入图片描述

在这里插入图片描述

250、
在这里插入图片描述

在这里插入图片描述

251、
在这里插入图片描述

在这里插入图片描述

252、
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秃秃秃秃哇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值