第2章C语言基本概念 练习题
2.1节1.建立并运行由Kerighan和Ritchie编写的著名的“hello,world”程序:#include stdio.h int main(void) { printf(Hello World); return 0; }2.2节2.思考下面的程序:#include stdio.h // 预处理指令 int main(void) { printf(Parkinsons Law: \nWork expands so as to ); // 输出语句 printf(fill the time\n); // 输出语句 printf(available for its completion.\n); // 输出语句 return 0; // 返回语句 }(a)请指出程序中的指令和语句。(b)程序的输出是什么?2.4节3.通过下列方法缩写程序dweight.c:(1)用初始化式替换对变量height、length和width的赋值:(2)去掉变量weight在最后的printf语句中计算(volume 165)/166。#include stdio.h int main(viod) { int heignt 8,length 12,width 10, volume, weight; //声明变量 volume heignt * length * width; printf(Dimensions:%d x %d x %d\n, heignt, length, width); //输出函数 printf(Volume:%d\n, volume); //输出函数 printf(Dimensional weight (pounds):%d\n, (volume 165) / 166); //输出函数 return 0; //程序的正常结束 }4.编写一个程序来声明几个int型和f1oat型变量不对这些变量进行初始化然后显示它们的值。这些值是否有规律?(通常情况下没有。5.判断下列C语言标识符哪些是不合法的?(a) 100_bottles(b)_100_bottles(c)onehundred bottles(d) bottles_by_the_hundred_答a不合法以为c语言中规定标识符只能以 下划线、字母开头6.为什么说在标识符中使用多个相邻的下划线(如current__balance)不太合适?答因为在阅读程序时很难分清到底有几个相邻的下划线如current____balance和current_____balance前者是4个下划线后者是5个下划线。在未来维护程序时不论是编写者本人还是他人都容易弄混下划线的数量造成不必要的混乱。7.判断下列哪些是C语言的关键字?(a) for(b)If(c)main(d)printf(e)while答只有(a)for和(e)while是关键字其余全都不是。(b) If 是因为C语言区分大小写所以If和if并不相同if是关键字但是If不是。(cmain和(d)printf也不是关键字main()函数是C语言自动调用的函数但是我们依旧可以将变量命名为main不建议这样做。printf()则是我们头文件stdio.h内包含的函数如果不调用这个头文件那么我们一样可以将变量命名为printf。总的来说只有在关键字表里的单词才是关键字其余都不是关键字。2.8节8.下面的语句中有多少记号?answer(3*q-p*p)/3;,答14个记号分别是answer、、(、3、*、q、-、p、*、p、)、/、3、;。9.在练习题8的记号之间插入空格使该语句更易于阅读。答answer (3 * q - p * p) / 3;10.在dweight.c程序(2.4节)中哪些空格是必不可少的?答程序当中出现两次的int后面空格不能少return 0; 中间的空格不能少。程序其他部分的空格都是为了易于阅读而存在的即使可去掉程序本身依旧能够正常执行只是增加了阅读困难编程题1.编写一个程序使用printf在屏幕上显示下面的图形int main(void) { printf( *\n); printf( *\n); printf( *\n); printf( *\n); printf(* *\n); printf(* *\n); printf( *\n); return 0; }2.编写一个计算球体体积的程序其中球体半径为10m参考公式v4/3πr ³。注意分数4/3应写为4.0f/3.0f。如果分数写成4/3会产生什么结果提示C语言没有指数运算符所以需要对r自乘两次来计算r ³。3.修改上题中的程序使用户可以自行录入球体的半径#define _CRT_SECURE_NO_WARNINGS #include stdio.h int main(void) { float r 0.0f; printf(请输入立方值); scanf(%f, r); printf(Sphere volume:%.2f cubic meters\n, 4.0f / 3.0f * 3.14f * r * r * r); return 0; }4.编写一个程序要求用户输入一个美金数量然后显示出增加5%税率后的相应金额。格式如下所示:#define _CRT_SECURE_NO_WARNINGS #include stdio.h int main(void) { //声明变量 money 和 taxed_money并初始化 。money--金额 taxed_money 税后今日 float money 0.0f; float taxed_money 0.0f; printf(Enter an amount:); //取地址符拿到float变量money的地址 scanf(%f, money); printf(debug money %f\n, money);// 新增调试打印 //计算税后的金额 taxed_money money * 1.05; //显示结果使用.2f是因为题目中税后的金额只保留了两位小数 printf(With tax added: $%.2f\n, taxed_money); return 0; }5.编程要求用户输入x的值然后显示如下多项式的值:#define _CRT_SECURE_NO_WARNINGS #include stdio.h int main(void) { /* 声明并初始化变量x和计算结果result选择float型是因为题目中没有说用户不能输入小数 */ float x 0.0f; float result 0.0f; /* 用户输入x的值然后将值写入变量x中 */ printf(Enter the value of x:); scanf(%f, x); /* 计算公式的结果 */ /*result 3 * x * x * x * x * x 2 * x * x * x * x - 5 * x * x * x - x * x 7 * x - 6;*/ result ((((3 * x 2) * x - 5) * x - 1) * x 7) * x - 6; printf(The result is : % f, result); return 0; }7.编写一个程序要求用户输入一个美元数量然后显示出如何用最少的20美元、10美元、5美元和1美元来付款Enter a dollar amount: 93$20 bills:4$10 bills:1$5 bills:0$1 bills:3#define _CRT_SECURE_NO_WARNINGS #include stdio.h int main(void) { int amount 0; int b20 0, b10 0, b05 0, b01 0; printf(Enter a dollar amount:); scanf(%d, amount); /* 因为要求是用最少张数付款所以先用总金额除以20得到的所需20美元的数量再将总金额减去所需20美元后除以10得到所需10美元数量以此类推求出全部结果 */ b20 amount / 20; amount amount - 20 * b20; b10 amount / 10; amount amount - 10 * b10; b05 amount / 5; amount amount - 5 * b05; b01 amount / 1; printf(\n$20 bills:%d\n$10 bills:%d\n $5 bills:%d\n $1 bills:%d\n, b20, b10, b05, b01); return 0; }8.编程计算第一、第二、第三个月还贷后剩余的贷款金额Enter amount of loan: 20000.00Enter interest rate:6.0Enter monthly payment:386.66Balance remaining after first payment:$19713.34Balance remaining after second payment:$19425.25Balance remaining after third payment:$19135.71在显示每次还款后的余额时要保留两位小数。提示每个月的贷款余额减去还款金额后还需要加上贷款余额与月利率的乘积。月利率的计算方法是把用户输入的利率转换成百分数再除以12。#define _CRT_SECURE_NO_WARNINGS #include stdio.h int main(void) { float loan 0.0f; float y_inter 0.0f; float m_inter 0.0f; float m_pay 0.0f; //用户输入贷款金额、年利率、月还款数 printf(Enter amount of loan:); scanf(%f, loan); printf(Enter interest rate: ); scanf(%f, y_inter); printf(Enter monthly payment: ); scanf(%f, m_pay); //计算月利率加1是因为如果直接是月利率乘以贷款金额得到的是利息利息还要在加上贷款金额。加1之后可以直接求出贷款金额加利息后的结果 * m_inter y_inter / 100 / 12 1; //求出第一个月还款的剩下金额 loan loan * m_inter - m_pay; printf(Balance remaining after first payment: %.2f\n, loan); //求出第二个月还款之后的剩余金额 loan loan * m_inter - m_pay; printf(Balance remaining after second payment: %.2f\n, loan); //求出第三个月还款之后的剩余金额 loan loan * m_inter - m_pay; printf(Balance remaining after third payment: %.2f\n, loan); return 0; }

相关新闻

Dify实战:一站式接入与管理OpenAI、Claude及本地大模型

Dify实战:一站式接入与管理OpenAI、Claude及本地大模型

在构建基于大模型的AI应用时,你是否曾为模型接入的复杂性而头疼?不同的API、各异的认证方式、复杂的参数配置,让一个简单的想法从构思到落地变得异常繁琐。Dify作为一款生产级的Agentic工作流开发平台,其核心优势之一就是“无缝接入全球大模型”,将我们从繁琐的底层对接中…

2026/7/25 1:41:11 阅读更多 →
阴阳师玩家如何告别重复劳动?OnmyojiAutoScript让你每天节省3小时游戏时间

阴阳师玩家如何告别重复劳动?OnmyojiAutoScript让你每天节省3小时游戏时间

阴阳师玩家如何告别重复劳动?OnmyojiAutoScript让你每天节省3小时游戏时间 【免费下载链接】OnmyojiAutoScript Onmyoji Auto Script | 阴阳师脚本 项目地址: https://gitcode.com/gh_mirrors/on/OnmyojiAutoScript 作为一名阴阳师玩家,你是否也经…

2026/7/25 1:41:11 阅读更多 →
猫抓插件完整教程:浏览器资源嗅探的终极解决方案

猫抓插件完整教程:浏览器资源嗅探的终极解决方案

猫抓插件完整教程:浏览器资源嗅探的终极解决方案 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾经遇到过这样的困扰&#xff…

2026/7/25 1:41:11 阅读更多 →

最新新闻

3分钟快速上手:qmc-decoder帮你解锁QQ音乐加密音频的完整指南

3分钟快速上手:qmc-decoder帮你解锁QQ音乐加密音频的完整指南

3分钟快速上手:qmc-decoder帮你解锁QQ音乐加密音频的完整指南 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder 你是否曾经下载了心爱的QQ音乐歌曲,却…

2026/7/25 1:48:13 阅读更多 →
Linux内核升级后NVIDIA驱动与CUDA环境修复全攻略

Linux内核升级后NVIDIA驱动与CUDA环境修复全攻略

1. 从标题拆解:一次内核升级与驱动修复的典型复盘 看到这个标题,你大概能猜到这是一次 Linux 内核升级后,NVIDIA 驱动需要重新适配的常规操作。但“体感平平无奇”背后,往往藏着最容易被忽略的依赖关系和环境细节。而“被 Gemini 发现的 bug”这个点,则把话题从单纯的驱动…

2026/7/25 1:48:13 阅读更多 →
重构合作伙伴 ROI:除了销售额,这 3 个指标才是增长晴雨表

重构合作伙伴 ROI:除了销售额,这 3 个指标才是增长晴雨表

在营销领域,你对各种指标早已习以为常:它们决定预算投放方向、验证活动成效、帮助你做更聪明的增长决策。但当这些理念切换到“合作伙伴营销”(Partner Marketing)或“渠道增长计划”时,许多团队却只盯着一个指标&…

2026/7/25 1:48:13 阅读更多 →
深入解析TI KeyStone II EDMA3控制器:架构、配置与性能优化实战

深入解析TI KeyStone II EDMA3控制器:架构、配置与性能优化实战

1. 项目概述与核心价值在嵌入式系统,尤其是像德州仪器(TI)KeyStone II架构下的66AK2E05/02这类高性能多核处理器中,数据搬移的效率直接决定了整个系统的性能上限。当CPU核心忙于复杂的信号处理或网络协议栈运算时,如果…

2026/7/25 1:48:13 阅读更多 →
计算机毕业设计之社区疫情防控管理系统

计算机毕业设计之社区疫情防控管理系统

近年来,科技飞速发展,在经济全球化的背景之下,互联网技术将进一步提高社会综合发展的效率和速度,互联网技术也会涉及到各个领域,而社区疫情防控管理系统在网络背景下有着无法忽视的作用。信息管理系统的开发是一个不断…

2026/7/25 1:48:13 阅读更多 →
Zotero PDF Translate:20+翻译引擎的学术翻译利器

Zotero PDF Translate:20+翻译引擎的学术翻译利器

Zotero PDF Translate:20翻译引擎的学术翻译利器 【免费下载链接】zotero-pdf-translate Translate PDF, EPub, webpage, metadata, annotations, notes to the target language. Support 20 translate services. 项目地址: https://gitcode.com/gh_mirrors/zo/zo…

2026/7/25 1:47:13 阅读更多 →

日新闻

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的…

2026/7/25 0:00:35 阅读更多 →
C++ string类模拟实现:从深拷贝到内存管理的完整指南

C++ string类模拟实现:从深拷贝到内存管理的完整指南

1. 项目概述:为什么我们要“手撕”string类?在C的学习道路上,尤其是从C语言过渡到C的“初阶”阶段,string类绝对是一个绕不开的核心。标准库里的std::string用起来太方便了,、find、substr,几个操作符和函数…

2026/7/25 0:00:35 阅读更多 →
三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

1. 先搞清楚“三角洲寻宝鼠”到底是什么工具从名称来看,“三角洲寻宝鼠”更像是一个资源查找或文件检索类工具,而不是游戏或娱乐软件。这类工具的核心价值在于帮助用户快速定位特定资源,比如文档、图片、压缩包或特定格式的文件。如果你经常需…

2026/7/25 0:00:35 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 3:59:20 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 1:23:39 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻