(语法百题28)#号倒三角形

法1:用i,j,k等变量控制#

for的灵活运用,算法的思考。

法2:用二维数组解题

二维数组的运用,算法思考。

注意for循环并列,顺序读取。

内容:

#############

###########

#########

#######

#####

###

#

输入说明:

输入n代表行数

输出说明:

倒三角行

 #include <stdio.h>
int main()
{
 int i,j,k,n,y;
 scanf("%d",&n);
 y=n;                       //行数,y方便以后行数的递减而不影响n
 for (i=0;i<n;i++)          //控制行数
 {
  for (j=0;j<i;j++)         //在每一行中,控制前面留白的部分
  {
   printf(" ");
  }
  for (k=0;k<2*y-1;k++)     //留白后,按照对应的行数输出#
  {
   printf("#");
  }
  y--;                      //每一行后,行数减1
  printf("\n");             //每一行后,换行
 }
 printf("\n");              //都执行完后,换行,把please……key 换行
 return 0;
}
#include <stdio.h>
int main()
{
 int n,i,t,m,y;
 char a[1000][1000];        //合适定义二维数组
 scanf("%d",&n);
 y=n;
 for (i=0;i<n;i++)          //控制行数
 {
  for (m=0;m<i;m++)         //控制留白部分
  {
    a[i][m]=‘ ‘;
    printf("%c",a[i][m]);
  }
  for(t=0;t<(2*y-1);t++)    //控制留白部分后面的#
  {

   a[i][t+i]=‘#‘;           //留白后是第i个位置,从这个位置后是#
   printf("%c",a[i][t+i]);
  }
 y-=1;                      //控制行数递减
 if(y==0)                   //当行数为0时,跳出for循环
 {
  break;
 }
 printf("\n");
 }
 printf("\n");
 return 0;
}
时间: 2024-08-10 15:08:06

(语法百题28)#号倒三角形的相关文章

(c语法百题15)算术运算

知识点: 法1: 字符与ASCLL码的转换熟练! if……else的用法 法2: switch的用法 注意 scanf("%f %f %c",&a,&b,&c);与scanf("%f%f%c",&a,&b,&c);的区别,中间有无空格. 内容: 输入两个数值(均不为零)及一个算术运算符,输出其运算的结果(保留两位小数). 输入说明: 一行,2个数字,一字符(+,-,*,/,分别代表加.减.乘.除 输出说明: 一行,一个

(c语法百题16)一元二次方程的实数根

知识点: 数学函数头文件 #include <math.h> 开平方函数,sqrt() 注意等号 == 与赋值号= 的区别 内容: 求一元二次方程(二次项系统不为0)ax2+bx+c=0(a≠0)的实数根 输入说明: 一行三个系数(用空格隔开) 输出说明: 先输出(-b+sqrt())/2/a的根,一行一个,如果是相等实根,则输出一个(均保留两位小数) .若无实根输出No answer! 输入样例: 1 1 2 输出样例 : No answer! 1 #include <stdio.h&

(c语法百题17)打印某年某月有几天

知识点: 逻辑表达式的灵活运用 法1: switch()的用法,注意字符用  case 'a': ……;break;  数字用 case 6:……;break; 不要忘了break: 法2: if……else 的用法 注意是否是闰年的算法 内容: 打印某年某月有几天 输入说明: 一行两个整数,前面是年份 后面是月份 输出说明: 一个整数 输入样例: 2009 6 输出样例 : 30 法1: #include <stdio.h> int main() { int y,m; scanf("

(c语法百题25)从 n 个数中挑选出最大的数

知识点: 数组灵活运用 for循环灵活运用 简单的算法 内容: 从 n 个数中挑选出最大的数 输入说明: 两行 第一行一个数n,表示总的个数 第二行共n个数字,用空格隔开. 输出说明: 一行,最大数 输入样例: 4 1 2 3 4 输出样例 : 4 #include <stdio.h>#define MAX 200; int main() { int a[MAX],n,i,t; scanf("%d",&n); for (i=0;i<n;i++) { scanf

(c语法百题21)四位整数

知识点: for语句,if语句灵活运用 内容: 编程找出四位整数 abcd 中满足下述关系的数: ( ab + cd )( ab + cd ) = abcd 输入说明: 没有输入 输出说明: 输出abcd,从小到大,一行一个. 1 #include <stdio.h> 2 int main() 3 { 4 int i,a,b; 5 for(i=1000;i<10000;i++) 6 { 7 a=i/100; 8 b=i%100; 9 if((a+b)*(a+b)==i) 10 { 11

(c语法百题12)优惠购物

知识点: if……else 的用法 内容: 节日期间,某超市举行优惠购物活动,规定:所购物品不超过1000元(含)时,按9.5折付款,如超过1000元,则超过部分按9折收费 输入说明: 一行 ,一个数,购物总额 输出说明: 一行 需付购物款(保留两位小数) 输入样例: 1200.58 输出样例 : 1130.52 1 #include <stdio.h> 2 int main() 3 { 4 float a,s; 5 scanf("%f",&a); 6 if (a&

(c语法百题11)输入一个数 ,输出其绝对值

知识点: if语句 内容: 输入一个数 ,输出其绝对值. 输入说明: 一行一个整数 输出说明: 一行一个整数 输入样例: -3 输出样例 : 3 #include <stdio.h> int main() { int a; scanf("%d",&a); if (a<0) { a=-a; } printf("%d\n",a); return 0; } (c语法百题11)输入一个数 ,输出其绝对值,布布扣,bubuko.com

(c语法百题13)符号函数

知识点: if……else……if……else的用法. 内容: 计算下列函数(符号函数): 1 (x>0) y= 0 (x=0) -1 (x<0) 输入说明: 一个整数 输出说明: 一个数字(1,0,或者-1) 输入样例: 12 输出样例: 1 1 #include <stdio.h> 2 int main() 3 { 4 int a; 5 scanf("%d",&a); 6 if (a>0) 7 { 8 printf("1\n"

(c语法百题14)判断直角三角形

知识点: 逻辑表达式的用法 &&       ||       !     注意优先级. 内容: 输入三角形的三边,判断它是否是直角三角形,是输出Yes,不是输出No,连三角形都不是,输出Error 输入说明: 一行,输入3个整数 输出说明: Yes! 或者 No!或者 Error! (注意大小写,标点前无空格) 输入样例: 3 4 5 输出样例 : Yes! 1 #include <stdio.h> 2 int main() 3 { 4 int a,b,c; 5 scanf(