1. 字符串比较函数的自编程序。
2. 求一个3*3的整型矩阵对角线元素之和。
3.输出杨辉三角形(课本第153页第7.6题)
4.课本第202页 8.3题 素数
5.课本第202页 8.5题 反序
test.rar 经测试均能正常运行并获得结果
解压密码 bbs.xiang6963.cn
求一个3*3的整型矩阵对角线元素之和。
#include <stdio.h>
void main()
{
int a[3][3];
int i,j;
float sum=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("a[%d][%d] ",i,j);
scanf("%d",&a[j]);
}
for(i=0;i<3;i++)
sum = sum + a+a[2-i];
printf("sum=%f\n",sum);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%6.1d",a[j]);
printf("\n");
}
}
#include <stdio.h>
void main()
{
int arr[2][11], n, i, j;
n=10;
for (i=0; i<=10; i++)
arr[0] = arr[1] = 0;
arr[0][1] = 1;
for (i=1; i<=n; i++)
{
for (j=1; j<=i; j++)
arr[i%2][j] = arr[(i-1)%2][j-1]+arr[(i-1)%2][j];
for (j=1; j<=i; j++)
printf("%-4d", arr[i%2][j]);
printf("\n");
}
printf("\n");
}
运行结果如下:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
北宋人贾宪约1050年首先使用“贾宪三角”进行高次开方运算,南宋数学家杨辉在《详解九章算法》(1961年)记载并保存了“贾宪三角”,故称杨辉三角。元朝数学家朱世杰在《四元玉鉴》(1303年)扩充了“贾宪三角”成“古法七乘方图”。在欧洲直到1623年以后,法国数学家帕斯卡在13岁时发现了“帕斯卡三角”。
杨辉三角的三个基本性质主要是二项展开式的二项式系数即组合数的性质,它是研究杨辉三角其他规律的基础。杨辉三角横行的数字规律主要包括横行各数之间的大小关系。组合关系以及不同横行数字之间的联系。
杨辉,字谦光,北宋时期杭州人。在他1261年所著的《详解九章算法》一书中,辑录了如上所示的三角形数表,称之为“开方作法本源”图。
同时,这也是多项式(a+b)^n 打开括号后的各个项的二次项系数的规律。 因此,杨辉三角第x层第y项直接就是(y nCr x)。我们也不难得到,第x层的所有项的总和为2^(x-1) (即(a+b)^x中a,b都为1的时候) 。上述y^x 指y的x次方,(a nCr b) 指组合数。
而这样一个三角在我们的奥数竞赛中也是经常用到,最简单的就是要找规律。
简单的说,就是两个未知数和的幂次方运算后的系数问题,比如(x+y)的平方=x的平方+2xy+y的平方,这样系数就是1,2,1这就是杨辉三角的其中一行,立方,四次方,运算的结果看看各项的系数,你就明白其中的道理了。
这就是杨辉三角,也叫贾宪三角,在外国被称为帕斯卡三角。
#include <stdlib.h>
#include <stdio.h>
int Is_prime(int i)
{
int j = 0;
for(j = 2; j < i; j++)
{
if(0 == (i%j))
{
return 0;
}
}
return 1;
}
int main()
{
int i;
printf("Please input a number:");
scanf("%d", &i);
if(1 == Is_prime(i))
{
printf("%d is a prime\n", i);
}
else
printf("%d is not a prime\n", i);
system("pause");
return 0;
}
C语言中判断素数
质数(又称为素数)
1.就是在所有比1大的整数中,除了1和它本身以外,不再有别的约数,这种整数叫做质数或素数。还可以说成质数只有1和它本身两个约数。这终规只是文字上的解释而已。能不能有一个代数式,规定用字母表示的那个数为规定的任何值时,所代入的代数式的值都是质数呢?
2.素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任
何其它两个整数的乘积。例如,15=3*5,所以15不是素数;又如,12
=6*2=4*3,所以12也不是素数。另一方面,13除了等于13*1以
外,不能表示为其它任何两个整数的乘积,所以13是一个素数。
#include <stdlib.h>
#include <stdio.h>
int Is_prime(int i)
{
int j = 0;
for(j = 2; j < i; j++)
{
if(0 == (i%j))
{
return 0;
}
}
return 1;
}
int main()
{
int i;
printf("Please input a number:");
scanf("%d", &i);
if(1 == Is_prime(i))
{
printf("%d is a prime\n", i);
}
else
printf("%d is not a prime\n", i);
system("pause");
return 0;
}
第二题
#include <stdio.h>
void main()
{
int a[3][3];
int i,j;
float sum=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("a[%d][%d] ",i,j);
scanf("%d",&a[j]);
}
for(i=0;i<3;i++)
sum = sum + a;
printf("sum=%f\n",sum);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%6.1d",a[j]);
printf("\n");
}
}