标签:ret image 题目 整数 最大 lazy 递增 span 符号
L1-001
这道超级简单的题目没有任何输入。
你只需要在一行中输出著名短句“Hello World!”就可以了。
无
Hello World!
1 #include<stdio.h> 2 int main() 3 { 4 printf("Hello World!"); 5 return 0; 6 }
L1-002
本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印
*****
***
*
***
*****
所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。
给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。
输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。
首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。
19 *
***** *** * *** ***** 2
不知道怎么肥四,显示部分正确,扣了两分...
1 #include<stdio.h> 2 #include<math.h> 3 4 int main() 5 { 6 char a; 7 int n,N; 8 int res=0,ret=0; 9 scanf("%d %c",&N,&a); 10 for(n=0;;n++){ 11 if(N>=2*pow(n,2)-1&&N<2*pow(n+1,2)-1){ 12 res=n; 13 break; 14 } 15 } 16 int m,i; 17 for (m = 0;m < n;m ++){ 18 for(i = 0;i < m;i ++) printf(" "); 19 for(i = 0;i < 2*res-1;i ++){ 20 printf("%c",a); 21 } 22 res--; 23 printf("\n"); 24 } 25 for (m = 0;m < n-1;m ++){ 26 for(i = m;i < n-2;i ++) printf(" "); 27 for(i = 0;i < 2*res+3;i++){ 28 printf("%c",a); 29 } 30 res++; 31 putchar(‘\n‘); 32 } 33 ret = N - 2*pow(n,2)+1; 34 if (ret != 0) printf("%d\n",ret); 35 return 0; 36 }
标签:ret image 题目 整数 最大 lazy 递增 span 符号
原文地址:https://www.cnblogs.com/Knight02/p/14089240.html