c - 左三角(),右三角(),帕斯卡三角()
问题描述
问:在单个 C 程序中编写三个不同的函数 Lefttriangle()、Righttriangle()、Pascaltriangle(),并按照用户的要求以交互方式显示三角形。
所以我试过这个。它正在打印选项,然后我输入一个选项,假设 1 然后它要求输入数字“n”。然后,我输入数字,假设 4 并按 Enter。但是它没有显示对应于 4 的左三角形。它再次打印选项。
#include<stdio.h>
#include<conio.h>
#include<math.h>
void pascaltriangle(int i,int j,int k,int n,int m)
{
for(i=0;i<n;i++)
{
for(k=1;k<=n-i;k++)
{
printf("The Pascal triangle of numbers is as follows - \n");
printf(" ");
}
for(j=0;j<=i;j++)
{
if(j==0||i==0)
m=1;
else
m=m*(i-j+1)/j;
printf(" %d",m);
}
printf("\n",m);
}
}
void lefttriangle(int i,int j,int n)
{
printf("Enter the value of n : ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
printf("The left triangle of numbers is as follows - \n");
printf("%d",j);
printf("\n");
}
}
void righttriangle(int i,int j,int k,int n)
{
printf("Enter the value of n : ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=i;j<=n;j++)
{
printf("The right triangle of numbers is as follows - \n");
printf(" ");
}
for(k=1;k<=i;k++)
{
printf("%d",k);
}
printf("\n");
}
}
int main()
{
int choice;
int i,j,k,n, m=1;
do
{
printf("\nEnter the choice below.\n");
printf("*************************\n");
printf("1-> Left Traingle.\n");
printf("2-> Right Triangle.\n");
printf("3-> Pascal Triangle.\n");
printf("*************************\n");
scanf("%d",&choice);
switch(choice)
{
case 1:
printf("Enter the value of n : ");
scanf("%d",&n);
void lefttriangle( i,j, n);
break;
case 2:
printf("Enter the value of n : ");
scanf("%d",&n);
void righttriangle(i,j,k,n);
break;
case 3:
printf("Enter the value of n : ");
scanf("%d",&n);
void pascaltriangle(i, j, k, n, m);
break;
case 4:
printf("Thank you!\n");
exit(0);
default:
printf("Enter a valid number.\n");
}
}while(1);
return(0);
}
解决方案
在您的开关中,当4
输入时,这种情况对应于:
printf("Thank you!\n");
exit(0);
只有当用户输入1
时才会调用左三角函数。
此外,在调用这些函数时,不要将返回类型放在它们前面。您只有在声明和/或实施它们时才这样做。
推荐阅读
- google-cloud-platform - 获取服务帐户的访问令牌时出错:使用服务帐户使用日历 API 时出现 401 未授权
- docker - docker-compose 的两种“命令”形式的行为是否不同?
- php - 在 WordPress 编辑器中替换 TinyMCE 字体 - 默认字体不会消失
- javascript - 如何在左右滑动行和列时降低响应鼠标事件的灵敏度?
- java - 打印没有额外空白或行的二维数组
- html - 为什么添加 `sm-4` 会使嵌入视频的边距过宽?
- r - 格式化数据并使其正常运行的问题
- python - 获取每个分层熊猫系列的第一行
- flutter - 带有文本的图像全屏(_getTellText(text)扩展颤动
- c++ - 在 C++ 中声明函数的不同方法