C语言编程:谭浩强第三版课后习题解
需积分: 45 64 浏览量
更新于2024-11-13
1
收藏 65KB TXT 举报
"C语言课后答案谭浩强第三版课后习题答案完整版"
这篇摘要提供了谭浩强编写的《C语言程序设计》第三版的课后习题答案,内容涵盖了一些基本的C语言编程练习,包括输出特定字符串、找到三个数中的最大值、字符编码的转换以及涉及运算符优先级和类型转换的问题。
1.5 题目要求打印星号组成的菱形图案,展示了如何利用循环和条件语句控制输出格式。
```c
#include <stdio.h>
void printPattern() {
printf("**************************\n");
printf("VeryGood!\n");
printf("**************************\n");
}
int main() {
printPattern();
return 0;
}
```
1.6 题目是输入三个整数并找出最大值,使用了if语句比较三个数的大小。
```c
#include <stdio.h>
int main() {
int a, b, c, max;
printf("请输入三个整数:");
scanf("%d %d %d", &a, &b, &c);
max = a;
if (max < b)
max = b;
if (max < c)
max = c;
printf("最大值是:%d\n", max);
return 0;
}
```
3.6 题目要求打印特定字符序列,演示了字符变量和转义字符的使用。
```c
#include <stdio.h>
int main() {
char c1 = 'a', c2 = 'b', c3 = 'c', c4 = '\101', c5 = '\116';
printf("a%cb%c\tc%c\tabc\n", c1, c2, c3);
printf("\t\b%c%c", c4, c5);
return 0;
}
```
3.7 题目要求实现字符串的加密,通过给字符增加固定偏移量,并输出结果。
```c
#include <stdio.h>
int main() {
char c1 = 'C', c2 = 'h', c3 = 'i', c4 = 'n', c5 = 'a';
c1 += 4;
c2 += 4;
c3 += 4;
c4 += 4;
c5 += 4;
printf("%c%c%c%c%c\n", c1, c2, c3, c4, c5);
return 0;
}
// 输出结果:Glmre
```
3.9 题目涉及混合类型的算术运算和取模运算,解释了浮点数到整数的转换规则。
1. 当x=2.5, a=7, y=4.7时,表达式1x+a%3*(int)(x+y)%2/4的值为2.5。
2. 当a=2, b=3, x=3.5, y=2.5时,表达式(float)(a+b)/2+(int)x%(int)y的值为3.5。
3.10 题目涉及自增自减运算符的顺序和结合性。
```c
int main() {
int i = 8, j = 10, m, n;
m = ++i; // i先加1变为9,然后赋值给m
n = j++; // j先加1变为11,然后赋值给n,之后j再加1变为12
printf("%d,%d,%d,%d", i, j, m, n); // 输出9,12,9,11
return 0;
}
```
3.12 题目测试了各种复合赋值运算符的效果。
1. a+=a相当于a=a+a,所以a的值为24。
2. a-=2相当于a=a-2,所以a的值为10。
3. a*=2+3相当于a=a*(2+3),所以a的值为60。
4. a/=a+a相当于a=a/(a+a),a初始值为12,所以a的值为0。
5. a%=(n%=2)相当于n=n%2,然后a=a%n,n的值为5,a的值为0。
6. a+=a-=a*a相当于a=a-(a*a),然后a=a+a,所以a的值为0。
以上内容详细解析了C语言课后习题中涉及的各个知识点,包括基本的输入输出、变量操作、逻辑判断、类型转换、字符串处理、运算符优先级和自增自减运算符的用法等。这些知识点构成了C语言学习的基础,对初学者来说非常有帮助。
2013-07-21 上传
2011-04-01 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2009-12-22 上传
2012-12-06 上传
zhangyi6969669
- 粉丝: 1
- 资源: 8
最新资源
- 平尾装配工作平台运输支撑系统设计与应用
- MAX-MIN Ant System:用MATLAB解决旅行商问题
- Flutter状态管理新秀:sealed_flutter_bloc包整合seal_unions
- Pong²开源游戏:双人对战图形化的经典竞技体验
- jQuery spriteAnimator插件:创建精灵动画的利器
- 广播媒体对象传输方法与设备的技术分析
- MATLAB HDF5数据提取工具:深层结构化数据处理
- 适用于arm64的Valgrind交叉编译包发布
- 基于canvas和Java后端的小程序“飞翔的小鸟”完整示例
- 全面升级STM32F7 Discovery LCD BSP驱动程序
- React Router v4 入门教程与示例代码解析
- 下载OpenCV各版本安装包,全面覆盖2.4至4.5
- 手写笔画分割技术的新突破:智能分割方法与装置
- 基于Koplowitz & Bruckstein算法的MATLAB周长估计方法
- Modbus4j-3.0.3版本免费下载指南
- PoqetPresenter:Sharp Zaurus上的开源OpenOffice演示查看器