C语言for或while循环3题 急在线等!!

来源:百度知道 编辑:UC知道 时间:2024/06/15 13:43:37
问题1.输入⾃然数n,出来一下的形状。用for⽂或while⽂作成
n=6
*
**
***
***
**
*
% ./a.out
n=7
*
**
***
****
***
**
*

问题2.输入⾃然数n,出来一下的形状。用for⽂或while⽂作成
% ./a.out
n=3
*
***
*****
% ./a.out
n=7
*
***
*****
*******
*********
***********
*************

问题3⾃然数n和maxを⼊⼒し,从1到max含有n的倍数的和超过100的时候,输出那个値。用for⽂或while⽂
% ./a.out
n: 3
max: 88
from 3 to 24, sum=108
% ./a.out
n: 5
max: 40
from 5 to 30, sum=105
% ./a.out
n: 6
max: 20
sum=36, less than 100

n=3。3的倍数,3+6+9+12+15+18+21+24=108 ,3〜24的和超过了100。
n=5。5的倍数,5+10+15+20+25+30=105 ,5〜30的和超了100.
n=6。6的倍数,max到20,6+12+18=36 结束.因为100以下,所以不表⽰.
第2题,图上空格显示不出来,成一个三角状

空格g*
空格***

1.
#include <stdio.h>

main()
{

int i,n2;
int j;
int n=0;

printf("n: ");
scanf("%d",&n);
n2 = n/2;

if (n>0){
for (i=0;i<n;++i){
if (i<n2){
j = 0;
while (j<=i){
j++;
printf("*");
}
}
else{
j = i;
do{
j++;
printf("*");
} while (j<n);
}
printf("\n");
}
}
}

2.#include <stdio.h>
main()
{
int n,i,j,k;

printf("n: ");
scanf("%d",&n);
for(i=0; i<n; i++)
{
for(j=0 ; j<=n-i-1; j++)
printf(" ");
for( k=0;k<=2*i;k++)
printf("*");
printf("\n");
}
}

3.#include <stdio.h>

main()
{

int i,j;
int s=100,sum=0