c语言-C语言输入不会,求指教

问题描述

C语言输入不会,求指教

按如下图形打印杨辉三角,其特点是两个腰上的数都为1,其他位置上的每一个数是它上

一行相邻两个整数之和。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
.
.
.

Input

包含多组数据。每组数据占一行。

输入n(0 < n <= 20)表示输出杨辉三角的行数。

Output

对于每组测试数据,输出n行杨辉三角。

格式要求:

每个数字宽6个字符。请使用 printf("%-6d", a);

每行末尾无空格。

Sample Input

5

Sample Output

        1
     1     1
  1     2     1

1 3 3 1
1 4 6 4 1

解决方案

不需要输入的 直接输出
#include
#define N 11
void main()
{int i,j,a[N][N];
for(i=1;i<N;i++)
{a[i][i]=1;
a[i][1]=1;
}
for(i=3;i<N;i++)
for(j=2;j<i;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=1;i<N;i++)
{for(j=1;j<=i;j++)
printf("%6d",a[i][j]);
printf("n");
}
}

解决方案二:

囧,这个网上到处都有,而且貌似谭浩强的C教程上就有
http://jingyan.baidu.com/article/fea4511a1f454df7bb9125cd.html

解决方案三:

输出一组的,网上确实有很多代码。如果修改为可以输出多组的呢?
1) 使用的数组按最大的维数定义,如20;或使用指针动态分析以满足维数变化的要求、
2) 使用 scanf 等完成维数的输出,再加上一个循环用于多组。

输出一组已经有了,按以上思路修改难度不大。

解决方案四:

是要前部输入完再输出答案,还是输入一个行数就输出一组答案然后继续接受输入?
如果是第二种可以
while(scanf(%d,&num)!=EOF)
{...}
第一种自己申请个数组循环接收

解决方案五:

  • 下面的程序经过vs2008验证通过
    #include
    void main()
    {

    int i=0,j=0,n=0,m=0;
    printf("请输入一个整数n");
    scanf("%dn",&n);

    for (i=1;i<=n;i++)
    {
    m=1;
    for (j=1;j<i;j++)
    {
    printf("%d",m);
    m=m*(i-j)/j;
    }
    printf("%dn",m);
    }

}

时间: 2024-10-26 06:05:18

c语言-C语言输入不会,求指教的相关文章

求问c语言中如何输入这样的形式,很简单的求回答

问题描述 求问c语言中如何输入这样的形式,很简单的求回答 输入1 2 23 45 23 34 这样的形式, 很简单,但是我一时想不到,求解答,菜鸟求帮助 解决方案 int a; int b; printf("%d %dn",a,b); 解决方案二: 看不懂你输入的内容有什么规律,如果只是想连同空格一起输入,那直接在控制窗口敲空格就行,编译器读取流时若发现空格不是想要读取的内容,会自动跳过.

acm icpc-一个c语言的简单acm问题,求两个二进制数有多少位不同,输入的是十进制数.

问题描述 一个c语言的简单acm问题,求两个二进制数有多少位不同,输入的是十进制数. include int main() { int n,p=0,k,m,t; int a[50]; int b[50]; int c[50]; int d[50]; int i=0,j,u,z,w,q,e,s; int r; int count=0; scanf("%d",&r); while(r--){ scanf("%d%d",&n,&m); while(

编程语言 c语言-新手求指教!用c语言 简单学生成绩统计软件 。万分感谢,编好发到邮箱425572938@.

问题描述 新手求指教!用c语言 简单学生成绩统计软件 .万分感谢,编好发到邮箱425572938@. 实现的任务: (1)每个学生记录中包含学号.姓名和C 语言课设成绩等信息: (2)创建学生记录链表: (3)更新学生记录(插入.排序.删除): (4)能统计各分数段的人数,并以分布图显示: (5)输出学生记录到屏幕. 设计内容: 1. 学生记录应该包括学号.姓名.C 语言课设成绩等信息,是本程序的核心数据结构,定 义如下: typedef struct { char num[11]; /*学号*

c语言题目二进制加法求指教

问题描述 c语言题目二进制加法求指教 由键盘输入两个二进制正整数(均不超过2的31次方),计算输出它们的和(结果同样以二进制表示).注:本题以字符串方式读取数据时,务必使用scanf(""%s"" ....)的方式 输入格式 共两行,一行一个二进制正整数(务必使用scanf(""%s"" ....)的方式,以确保读入的串末尾不会含有空格及其它特殊字符)输出格式 二进制形式的和输入样例 110110输出样例 1111 解决方案

求解决-怎么用C语言编写这个程序,求指教

问题描述 怎么用C语言编写这个程序,求指教 本题要求编写程序计算某年某月某日是该年中的第几天. 输入格式: 输入在一行中按照格式"yyyy/mm/dd"(即"年/月/日")给出日期.注意:闰年的判别条件是该年年份能被4整除但不能被100整除.或者能被400整除.闰年的2月有29天. 输出格式: 在一行输出日期是该年中的第几天. 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 解决方案 网上一搜有很多,c

求解决-怎么用c语言编这个代码,求指教

问题描述 怎么用c语言编这个代码,求指教 /**给定四种水果,分别是苹果(apple).梨(pear).桔子(orange).葡萄(grape),单价分别对应为3.00元/公斤.2.50元/公斤.4.10元/公斤.10.20元/公斤. 首先在屏幕上显示以下菜单: [1] apple [2] pear [3] orange [4] grape [0] exit 用户可以输入编号1~4查询对应水果的单价.当连续查询次数超过5次时,程序应自动退出查询:不到5次而用户输入0即退出:输入其他编号,显示价格

c语言取小数问题,急求大神解答!

问题描述 c语言取小数问题,急求大神解答! 程序是#include int main() { float a,b; int n; scanf("%f",&a); n=(1000*a+0.5); b=(n*1.0)/1000; printf("%f",b); return 0; } 输入123.4567 输出是123.457001 输入1234.567 输出时1234.567017 输入12345.67 输出是12345.669922 为什么会这样呢?求大神解

c语言-C语言素数的编程问题,求大家解答

问题描述 C语言素数的编程问题,求大家解答 这些代码编译没有问题,我测试了几个数也没有问题,为什么放到AMC的OJ系统一直说答案错误? 求大家看看 谢谢了! 问题要求是输入整数,判断素数 如果是就输出1,不是就输出0 #include int main() { int a,i,find; scanf("%d",&a); if(a<=1) { find=0; printf("%d",find); return 0; } for(i=2;i<a;i+

求解决-请用c语言编写此程序,重点在怎么把None输出,求指教

问题描述 请用c语言编写此程序,重点在怎么把None输出,求指教 /**输出21世纪中截止某个年份以来的所有闰年年份.注意:闰年的判别条件是该年年份能被4整除但不能被100整除.或者能被400整除. 输入格式: 输入在一行中给出21世纪的某个截止年份. 输出格式: 逐行输出满足条件的所有闰年年份,即每个年份占一行.输入若非21世纪的年份则输出"Invalid year!".若不存在任何闰年,则输出"None". 输入样例1: 2048 输出样例1: 2004 200