{
long f=1; int i;
for(i=1;i<=n;i++) f*=i; return f; }
long combination(int m,int n ) /*求组合函数 C(n,m) */ {
return factorial(n)/(factorial(m)*factorial(n-m)); }
4 调试、运行
五、程序调试及实验总结
通过本次实验掌握了C语言函数的应用(可自行发挥) 六、教师评语
实验四:数组的应用
一、实验目的
掌握一维数组、二维数组、字符数组的定义、初始化赋值、数组元素的引用方法
二、实验内容
1.设有一维数组a[10]={2,32,6,74,-14,68,0,-9,41,32},用C语言程序输出此数组中最大值及此数组的平均值,并输出由小到大排序后的数组。
2. 应用二维数组打印如下图所示杨辉三角形。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
??
杨辉三角形
三、 实验环境:
1 硬件要求:计算机(CPU: Pentium III 600MHz以上;RAM:256M以上;
6
硬盘空间:4G以上)
2 操作系统: WindowsXP 3 软件要求:Turbo C2.0
四、实验步骤及程序编写: 1打开Turbo C2.0 2新建C程序文件 3 编写代码: (1)
main() {
int a[10]={2,32,6,74,-14,68,0,-9,41,32}; int i,j,t,max=a[0]; double ave=0,s=0; for (i=0;i<10;i++) {
s+=a[i];
if (max
ave=s/10;
printf(\ printf(\ for(i=0;i<9;i++) for(j=0;j<9-i;j++) {
if(a[j]>a[j+1]) {
t=a[j];
a[j]=a[j+1]; a[j+1]=t; } }
printf(\ for(i=0;i<10;i++) printf(\ \ getch(); }
(2)
main( ) {
int y[6][6]; int i,j,n=6;
7
for(i=0;i y[i][i]=1; y[i][0]=1; } for(i=2;i for(j=1;j y[i][j]=y[i-1][j-1]+y[i-1][j]; } printf(\ triangle:\\n\ for(i=0;i printf(\ \ for(j=0;j<=i;j++) printf(\ printf(\ } getch(); } 4 调试、运行 五、程序调试及实验总结 通过本次实验掌握了C语言的数组的应用(可自行发挥) 六、教师评语 实验五:指针的应用 一、实验目的 1. 理解指针的基本概念和运算 2. 掌握指针与数组、指针与函数、指向字符串的指针的应用 3. 掌握多重指针的概念和基本应用 二、实验内容 1.输入3个数a,b,c,按小到大顺序输出。要求利用指针方法实现。 2.用返回指针类型函数实现字符串连接函数strcat(),通过1)输入字符串s1和s2进行测试,2)将字符串“string”作为参数与s1和s2的连接后的结果调用函数strcat()实现连接。 3.写一个函数,该函数从主程序接受一个字符串,将字符串中的数字和其它字符分开,形成两个字符串输出。 三、 实验环境: 8 1 硬件要求:计算机(CPU: Pentium III 600MHz以上;RAM:256M以上; 硬盘空间:4G以上) 2 操作系统: WindowsXP 3 软件要求:Turbo C2.0 四、实验步骤及程序编写: 1打开Turbo C2.0 2新建C程序文件 3 编写代码: (1) main() { int n1,n2,n3; int *p1,*p2,*p3; printf(\scanf(\p1=&n1; p2=&n2; p3=&n3; if(n1>n2) swap(p1,p2); if(n1>n3) swap(p1,p3); if(n2>n3) swap(p2,p3); printf(\getch(); } swap(int *p,int *q) { int t; t=*p;*p=*q;*q=t; } (2) char * strcat(char *p1, char *p2); void main() { char s1[20]; char s2[20]; printf(\ scanf(\ printf(\ scanf(\ strcat(s1,s2); 9 printf(\ strcat(s1,\ printf(\ getch(); } char * strcat(char *p1, char *p2) { char * head=p1; while(*p1!='\\0') p1++; while(*p2!='\\0') { *p1=*p2; p1++; p2++; } *p1='\\0'; return head; } 3) void main() { char str[20]; printf(\scanf(\strsplit(str); getch(); } strsplit(char *str) { char *p=str; char p11[20]; char p22[20]; char *p1=p11; ( 10 char *p2=p22; while(*p) { if(*p>='0'&& *p<='9') {*p1=*p; p1++;} else {*p2=*p; p2++;} p++; } *p1=*p2='\\0' ; printf(\printf(\} 4 调试、运行 五、程序调试及实验总结 通过本次实验掌握了C语言指针的应用(可自行发挥) 六、教师评语 11 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库2011C语言实验报告5次(2)在线全文阅读。
相关推荐: