打印金字塔
#include<Stdio.h>
int main(void)
{
int i,z,k,n;
printf("请输入要生成的塔层:");
scanf("%d",&n );
for(i=1;i<=n;i++) /*首先判断需要打印几行塔,把i与n值比较,判断需要循环几次
然后逐句打印,首先由思路可知,一层打印的空格数为n-i个
一层打印的*的数量为(2*i-1) 设置循环,循环逐层打印 */
{
for(z=0;z<n-i;z++)
printf(" ");
for(k=0;k<(2*i-1);k++)
printf("*");
printf("\n");}
return 0;
}
运行结果
打印乘法口诀表
#include<stdio.h>
int main(void)
{
int i,j,num; //num只是存储下面i*j的数,不是加法的意思。乘法的英语忘了......
for(i=1;i<10;i++)
{
for(j=1;j<=i;j++)
{num=i*j;
printf("%d*%d=%d\t",j,i,num);} // /t是水平制表符的意思,用来让表格对齐
printf("\n");}
return 0;
}
运行结果
字符反输出
#include<stdio.h>
#include<string.h>
int main()
{
char a[50],b[50];
int i ,n,j=0;
printf("请输入一段话:");
gets (a); //输入一段字符并存入a中
n=strlen(a); //测量字符串长度
for(i=n-1;i>=0;i--) //复制第n-1个,因为第n个是'\n'。所以不复制
b[j++]=a[i];
b[j]='\0'; //让字符串最后以回车符结束
strcpy(a,b); //把字符串b复制到字符串a中
printf("该段话反过来为:%s\n",a);
return 0;
}
运行结果