C语言二级考试重要知识点总结(三)



以下是本篇文章正文内容,下面案例可供参考`

一、宏定义题型

在这里插入图片描述

#define F(x,y)	x>y?x:y
 int a=2,b=5,c; 
 c=4+F(a,b);

在这里插入图片描述
则答案为D

在C语言中,宏定义有一些易错点,包括:

1. 宏定义的参数类型和值必须匹配。
如果宏定义的参数类型和值不匹配,编译器会报错。

2. 宏定义不能包含条件语句、循环语句等控制结构.
因为宏定义是在预处理阶段进行替换的,无法执行控制结构。

3. 宏定义不能包含函数或表达式。
因为宏定义是在预处理阶段进行替换的,无法执行函数或表达式。

4. 宏定义不能包含嵌套宏定义。
因为宏定义是在预处理阶段进行替换的,无法识别嵌套的宏定义。

5. 宏定义可能会导致代码可读性降低。
因为宏定义会在编译前被替换掉,可能会使代码变得难以理解。

6. 宏定义可能会导致程序出现意料之外的行为。
因为宏定义是在预处理阶段进行替换的,可能会导致程序出现意料之外的结果。

二、综合应用题

1.1.输入一个字符,如果它是大写字母,输出对应的小写字母;如果它是小写字母, 输出对应的大写字母;其它字符按原样输出。

代码如下(示例):

#include <stdio.h>  
  
int main() {  
    char c;  
    printf("请输入一个字符:");  
    scanf("%c", &c);  
    if (c >= 'A' && c <= 'Z') {  // 如果是大写字母  
        c = c + ('a' - 'A');  // 转换为小写字母  
    } else if (c >= 'a' && c <= 'z') {  // 如果是小写字母  
        c = c - ('a' - 'A');  // 转换为大写字母  
    }  
    printf("转换后的字符为:%c\n", c);  
    return 0;  
}

或者
在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小伍_Five

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

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

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

打赏作者

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

抵扣说明:

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

余额充值