中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题
2019-04-18 18:16
381 查看
自测-1 打印沙漏
本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印
***** *** * *** *****
所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。
给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。
输入格式:
输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。
输出格式:
首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。
输入样例:
19 *
输出样例:
***** *** * *** *****2
机械化的思维
- 获得输入的正整数N和符号,并保存为变量
- 计算需要打印的行数和每行的空格数和具体的符号数
- 输出相应的符号和空格
- 输出剩余的符号数
#include<stdio.h> #include<math.h> int main() { int number,returnValue;//声明符号数和scanf返回值 int n;//声明n代表一半的行数,行数i=2n-1 int charLeft;//声明剩余的符号数 int k,j,m;//声明循环变量 char a;// 声明符号变量 double result,x;//开根号的运算结果及根号里的数 returnValue = scanf("%d %c",&number,&a);//读入符号数和符号字符 if(returnValue==2){ //计算n的值,需要开根号并向下取整 x = (number+1)/2; result = sqrt(x); n = result; //计算剩余符号数 charLeft = number-2*n*n+1; //循环输出上半个沙漏 for(k=n;k>=1;k=k-1) { //每次循环打印n-k个空格 for(m=1;m<=n-k;m++) { printf(" "); } //每次循环打印2k-1个符号 for(j=1;j<=2*k-1;j++) { printf("%c",a); } printf("\n"); } //循环输出下半个沙漏 for(k=2;k<n+1;k=k+1) { //每次循环打印n-k个空格 for(m=1;m<=n-k;m++) { printf(" "); } //每次循环打印2k-1个符号 for(j=1;j<=2*k-1;j++) { printf("%c",a); } printf("\n"); } printf("%d",charLeft); }else{ printf("输入错误"); } return 0; }
相关文章推荐
- [PTA-PAT]中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题-自测-4 Have Fun with Numbers
- 中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题
- [PTA-PAT]中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题-自测-1 打印沙漏
- [PTA-PAT]中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题-自测-5 Shuffling Machine
- [PTA-PAT]中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题-自测-2 素数对猜想
- 中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题 自测-1 打印沙漏
- [PTA-PAT]中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题-自测-3 数组元素循环右移问题
- PTA中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题
- 中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题&代码
- 中国大学MOOC-陈越、何钦铭-数据结构-2017秋 03-树1 树的同构(25 point(s))
- PAT-中国大学MOOC-陈越、何钦铭-数据结构基础习题集 00-自测5. Shuffling Machine (20) (简单模拟)【二星级】
- 中国大学MOOC-陈越、何钦铭-数据结构 一元多项式的乘法与加法运算
- 中国大学MOOC-陈越、何钦铭-数据结构 是否同一棵二叉搜索树
- 中国大学MOOC-陈越、何钦铭-数据结构-2018春-03-树2 List Leaves
- 02-线性结构2 一元多项式的乘法与加法运算-中国大学MOOC-陈越、何钦铭-数据结构-2017秋
- 【中国大学MOOC-陈越、何钦铭-数据结构-2017秋】最大子列和问题
- 中国大学MOOC-陈越、何钦铭-数据结构基础习题集 00-自测3-数组元素循环右移问题 (20)
- 中国大学MOOC-陈越、何钦铭-数据结构-2017春期中考试
- 中国大学MOOC-陈越、何钦铭-数据结构-2016秋期中考试
- 中国大学MOOC-陈越、何钦铭-数据结构 Insert or Merge