宁波公司建网站哪家好dw怎么做百度网站
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:15
当前位置: 首页 > news >正文
宁波公司建网站哪家好,dw怎么做百度网站,基于mvc的jsp网站开发,免费开网站系统引言 C语言是一门面向过程的、抽象化的通用程序设计语言#xff0c;广泛应用于底层开发。它在编程语言中具有举足轻重的地位。 此文为【C语言必知必会】第六篇#xff0c;基于进行C语言循环结构的编程题专项练习#xff0c;结合专题优质题目#xff0c;带领读者从0开始广泛应用于底层开发。它在编程语言中具有举足轻重的地位。 此文为【C语言必知必会】第六篇基于进行C语言循环结构的编程题专项练习结合专题优质题目带领读者从0开始深度掌握知识点。 文章目录 1️⃣ 前言2️⃣PTA专项练习7-1 统计一行字符中各类字符的个数7-2 打印九九口诀表7-3 二分法求多项式单根7-4 梅森数7-5 单词长度7-6 21循环-求和37-7 21循环-金字塔3️⃣ 总结 1️⃣ 前言
在【C语言必知必会】系列中我们学习了顺序结构、选择结构、循环结构等同时也通过专项练习进行了知识点的巩固和手敲代码的锻炼。
在子系列中我们将基于PTA教学平台向C语言学习者提供更优质的题目与更巧妙、精髓的解题思想与方法。 PTA是一个程序设计类实验辅助教学平台,由千名老师共同建设,里面包含了上万道高质量题目,用户量达百万。 在本讲中将深入讲解循环结构编程题在思想上引领读者带领读者在理论结合实际的基础上更好地学习、吸收、掌握C语言。 2️⃣PTA专项练习
接下来开始我们的循环结构专篇练习。
7-1 统计一行字符中各类字符的个数
用户输入一行字符以回车符作为结束请统计这行字符中大小写字母个数、数字字符个数、空格个数和其它字符个数。
输入格式: 一行字符以回车符作为结束。
输出格式: 输出4个以空格作为间隔的整数分别代表大小写字母个数、数字字符个数、空格个数和其它字符的个数。
输入样例:
Tersfi23* sdf A$输出样例:
10 2 4 3解题思路
使用while语句结合getchar函数来匹配回车符
代码如下
#include stdio.h
int main()
{int zimu0,shuzi0,space0,other0;char c;while((cgetchar())!\n){if((cacz)||(cAcZ)){zimu;}else if(c0c9){shuzi;}else if(c ){space;}else{other;}}printf(%d %d %d %d,zimu,shuzi,space,other);}7-2 打印九九口诀表
下面是一个完整的下三角九九口诀表
1*11
1*22 2*24
1*33 2*36 3*39
1*44 2*48 3*412 4*416
1*55 2*510 3*515 4*520 5*525
1*66 2*612 3*618 4*624 5*630 6*636
1*77 2*714 3*721 4*728 5*735 6*742 7*749
1*88 2*816 3*824 4*832 5*840 6*848 7*856 8*864
1*99 2*918 3*927 4*936 5*945 6*954 7*963 8*972 9*981 本题要求对任意给定的一位正整数N输出从1*1到N*N的部分口诀表。
输入格式 输入在一行中给出一个正整数N1≤N≤9。
输出格式 输出下三角N*N部分口诀表其中等号右边数字占4位、左对齐。
输入样例
4输出样例
1*11
1*22 2*24
1*33 2*36 3*39
1*44 2*48 3*412 4416 解题思路 使用for循环嵌套 当两个乘数相等时换行
代码如下
#include stdio.h
int main()
{int i,j;int n;scanf(%d,n);for(i1;in;i){for(j1;ji;j){printf(%d%d%4d,j,i,j*i);if(ij){printf(\n);}}}
}
注意
- 表示左对齐而 4 表示占据4位宽度 右对齐直接%4d就行 7-3 二分法求多项式单根 二分法求函数根的原理为如果连续函数f(x)在区间[a,b]的两个端点取值异号即f(a)f(b)0则它在这个区间内至少存在1个根r即f®0。 二分法的步骤为 检查区间长度如果小于给定阈值则停止输出区间中点(ab)/2否则如果f(a)f(b)0则计算中点的值f((ab)/2)如果f((ab)/2)正好为0则(ab)/2就是要求的根否则如果f((ab)/2)与f(a)同号则说明根在区间[(ab)/2,b]令a(ab)/2重复循环如果f((ab)/2)与f(b)同号则说明根在区间[a,(ab)/2]令b(ab)/2重复循环。 本题目要求编写程序计算给定3阶多项式f(x)a3*x^3a2*x^2a1*xa0在给定区间[a,b]内的根。 输入格式 输入在第1行中顺序给出多项式的4个系数a3、a2、a1、a0在第2行中顺序给出区间端点a和b。题目保证多项式在给定区间内存在唯一单根。 输出格式 在一行中输出该多项式在该区间内的根精确到小数点后2位。 输入样例 3 -1 -3 1 -0.5 0.5输出样例 0.33解题思路 按照题目要求构建代码即可 代码如下 #includestdio.hint main() {double a0,a1,a2,a3,a,b;scanf(%lf %lf %lf %lf %lf %lf,a3,a2,a1,a0,a,b);while((b-a)0.01){double s(ab)/2;double fsa3*s*s*sa2*s*sa1*sa0;double faa3*a*a*aa2*a*aa1*aa0;double fba3*b*b*ba2*b*ba1*ba0;if(fs0){printf(%lf,s);}if(fa*fb0){if(fs/fa0)as;elsebs;}}printf(%.2lf,(ab)/2);return 0; } 7-4 梅森数 形如2n−1的素数称为梅森数Mersenne Number。例如22−13、23−17都是梅森数。1722年双目失明的瑞士数学大师欧拉证明了2^31−12147483647是一个素数堪称当时世界上“已知最大素数”的一个记录。 本题要求编写程序对任一正整数nn20输出所有不超过2n−1的梅森数。 输入格式 输入在一行中给出正整数nn20。 输出格式 按从小到大的顺序输出所有不超过2n−1的梅森数每行一个。如果完全没有则输出“None”。 输入样例 6输出样例 3 7 31解题思路 先满足2^n-1的形式再计算是否为素数 代码如下 #include stdio.h #include math.h int main() {int n,i,c,j,ge0;scanf(%d,n);for(i2;in;i) //满足梅森数的形式{cpow(2,i)-1;for(j2;jc-1;j){if(c%j0){break; //不是素数}}if(jc-1) //是素数的条件{printf(%d\n,c); ge;}}if(ge0){printf(None);} }7-5 单词长度 你的程序要读入一行文本其中以空格分隔为若干个单词以.结束。你要输出每个单词的长度。这里的单词与语言无关可以包括各种符号比如its算一个单词长度为4。注意行中可能出现连续的空格最后的.不计算在内。 输入格式 输入在一行中给出一行文本以.结束 提示 用scanf(%c,…);来读入一个字符直到读到.为止。 输出格式 在一行中输出这行文本对应的单词的长度每个长度之间以空格隔开行末没有最后的空格。 输入样例 Its great to see you here.输出样例 4 5 2 3 3 4解题思路 使用循环读取字符直到读取到 . 字符或者无法继续读取为止。 在循环中判断当前读取的字符是否为空格。如果是空格则说明一个单词的长度统计完成需要输出该单词的长度并将 wordCount 加一wordLength 归零。 如果当前字符不是空格则说明当前字符属于一个单词内部将 wordLength 加一以统计单词的长度。 循环结束后需要处理最后一个单词。如果 wordLength 大于0说明最后一个单词的长度统计完成需要输出该单词的长度并将 wordCount 加一。 代码如下 #include stdio.hint main() {char ch;int wordCount 0; // 单词计数器int wordLength 0; // 当前单词长度while (scanf(%c, ch) 1 ch ! .) {if (ch ) {if (wordLength 0) {printf(%d , wordLength);wordCount;wordLength 0;}} else {wordLength;}}// 输出最后一个单词的长度if (wordLength 0) {printf(%d, wordLength);wordCount;}printf(\n);return 0; } 7-6 21循环-求和3 sxtc爱做数学题今天他又拿到一道数学题 注意答案有可能很大请对114514取模。 他希望擅长求和的你帮他解出这个求和问题。 输入格式: 读入两个数n,k。 输出格式: 输出求和结果请对答案取模114514。 输入样例: 在这里给出一组输入。例如 11451 4输出样例: 在这里给出相应的输出。例如 113968解题思路 使用两个嵌套的 for 循环来计算积和求和。外层循环控制变量 i 从1到 n内层循环控制变量 e 从1到 k。在每次内层循环中通过 d (d * c) % 114514 实现了累乘的操作并将结果存储在变量 d 中。 在外层循环的每次迭代结束后将 d 累加到变量 f 中并在累加之前通过 % 114514 运算符对 d 进行取模操作。最后通过 % 114514 运算符对 f 进行取模操作并输出结果。 代码如下 #include stdio.hint main() {int n, k;scanf(%d%d, n, k);int d 1;int f 0;for (int i 1; i n; i) {for (int e 1; e k; e) {d (d * i) % 114514;}f (f d) % 114514;d 1;}printf(%d, f);return 0; }7-7 21循环-金字塔 SeraphJACK正在摆积木。他想用这些积木垒成一座金字塔。同时摆好金字塔之后他为每层积木涂上不同的颜色这些颜色用从1开始的正整数表示从最底层开始涂色。现在告诉你SeraphJACK有n块积木请输出他用这些积木能摆出并涂色的最大金字塔。金字塔形状详见样例,0表示这个位置没有积木 输入格式: 一个整数n,1n1000 输出格式: 涂色后的金字塔 输入样例1: 在这里给出一组输入。例如 11输出样例1: 在这里给出相应的输出。例如 0004000 0030300 0202020 1010101输入样例2: 在这里给出一组输入。例如 1输出样例2: 在这里给出相应的输出。例如 1解题思路 外层使用 for 循环用于确定金字塔的层数。通过不断增加 b层数 的值直到满足积木数量 b * (b 1) / 2 大于或等于输入的积木数量 a。 内层嵌套使用两个 while 循环用于打印每一层的积木。其中第一个 while 循环控制层数从第一层开始到倒数第二层。第二个 while 循环控制打印每一层的积木个数和颜色。 在第二个 while 循环中根据打印位置的关系来判断是否打印积木和积木的颜色。若当前位置在金字塔的边缘或超出边缘范围则打印0否则根据 (d-b1c)%21 的条件判断来决定打印的颜色。 代码如下 #includestdio.h int main() {int a,b,c1,d;scanf(%d,a);for(b1;b*(b1)/2a;b);while(c(b-1)){d1;while(d2*b-3){if(d(b-1-c)||db-2c)printf(0);else if((d-b1c)%21)printf(%d,b-c);else printf(0);d;}printf(\n);c;}return 0; }3️⃣ 总结 此文为 【C语言必知必会】子系列第六篇 通过以题代练的形式带领读者掌握C语言的循环结构带领读者从0开始深度掌握知识点。 以题代练对于C语言的学习是十分重要的专栏将持续提供优质C语言编程题与理论课的学习带领读者全方位掌握C语言。读者可订阅专栏持续跟进。
- 上一篇: 宁波高新区建设局网站网站用户体验评价方案
- 下一篇: 宁波公司网站开发南昌网站开发培训中心
相关文章
-
宁波高新区建设局网站网站用户体验评价方案
宁波高新区建设局网站网站用户体验评价方案
- 技术栈
- 2026年03月21日
-
宁波房产信息网官方网站网站建设行业税率
宁波房产信息网官方网站网站建设行业税率
- 技术栈
- 2026年03月21日
-
宁波房产交易信息网江苏网站建设优化
宁波房产交易信息网江苏网站建设优化
- 技术栈
- 2026年03月21日
-
宁波公司网站开发南昌网站开发培训中心
宁波公司网站开发南昌网站开发培训中心
- 技术栈
- 2026年03月21日
-
宁波公司网站开发招聘seo搜索引擎优化是什么
宁波公司网站开发招聘seo搜索引擎优化是什么
- 技术栈
- 2026年03月21日
-
宁波关键词优化企业网站建设营销型网站案例易网拓
宁波关键词优化企业网站建设营销型网站案例易网拓
- 技术栈
- 2026年03月21日
