题目:100条经典C语言笔试题目(1-5)

题目:

1 、请填写 bool , float, 指针变量 与"零值"比较的if 语句。

提示:这里"零值"可以是 0, 0.0 , FALSE 或者"空指针" 。例如 int 变量 n 与"零值"比较的 if 语句为:

(1)请写出bool flag 与"零值"比较的 if 语句:

(2)请写出float x与"零值"比较的if 语句

(3)请写出 char *p 与"零值"比较的 if 语句

2、以下为 Linux下的 32 位 C程序,请计算 sizeof 的值。
c 复制代码
char  str[] = "Hello" ; 
char   *p = str ;   
int     n = 10;                                                               
请计算:                                                    
 (1)sizeof (str ) =                  (2)sizeof ( p ) =                 (3)sizeof ( n ) =
3、long a=0x801010; a+5=?
4、用变量a给出下面的定义

e) 一个有10个指针的数组,该指针是指向一个整型数的;

f) 一个指向有10个整型数数组的指针 ;

g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数;

h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数;

5、设有以下说明和定义:
c 复制代码
typedef union {
    long  i ;
    int k[5]; 
    char c;
} DATE;
 struct  data { 
     int cat; 
     DATE cow; 
     double dog;
 } too;
 DATE max;
则语句 printf ("%d", sizeof( struct date)+ sizeof(max));的执行结果是

答案

1、

c 复制代码
(1)if ( flag )  if ( !flag )
(2)const float EPSINON = 0.00001;                                           
	if ((x >= - EPSINON) && (x <= EPSINON)               
    不可将浮点变量用"=="或"!="与数字比较,应该设法转化成">="或"<="此类形式。 
(3)if (p == NULL)    if (p != NULL) 

2、

c 复制代码
(1)6、(2)4、(3)4

3、

c 复制代码
0x801010用二进制表示为:"1000 0000 0001 0000 0001 0000",十进制的值为8392720,再加上5就是8392725。

4、

c 复制代码
e)int * a[10];      
f)int (*a)[10]                                             
g)int (*a)(int);   
h) int (*a[10])(int)

5、

c 复制代码
DATE是一个union, 变量公用空间. 里面最大的变量类型是int[5], 占用20个字节. 所以它的大小是20
data是一个struct, 每个变量分开占用空间. 依次为int4 + DATE20 + double8 = 32.
20 + 32 = 52.
相关推荐
墨小傲23 分钟前
基于Linux下的vscode c/c++开发环境搭建详细教程
linux·c语言·vscode
阿捏利1 小时前
【加解密与C】非对称加解密(二)ELGamel
c语言·加解密·elgamel
1024小神2 小时前
tauri项目在windows上的c盘没有权限写入文件
c语言·开发语言·windows
学不动CV了10 小时前
ARM单片机启动流程(二)(详细解析)
c语言·arm开发·stm32·单片机·51单片机
猫猫的小茶馆12 小时前
【STM32】通用定时器基本原理
c语言·stm32·单片机·嵌入式硬件·mcu·51单片机
pumpkin8451413 小时前
Rust 调用 C 函数的 FFI
c语言·算法·rust
2401_8582861114 小时前
125.【C语言】数据结构之归并排序递归解法
c语言·开发语言·数据结构·算法·排序算法·归并排序
双叶83615 小时前
(C++)学生管理系统(正式版)(map数组的应用)(string应用)(引用)(文件储存的应用)(C++教学)(C++项目)
c语言·开发语言·数据结构·c++
is081517 小时前
STM32的 syscalls.c 和 sysmem.c
c语言·stm32·嵌入式硬件
学不动CV了18 小时前
数据结构---链表结构体、指针深入理解(三)
c语言·arm开发·数据结构·stm32·单片机·链表