C语言学习认为比较值得重视的程序

程序一:杨辉三角

#include<stdio.h>#define N 6int main(void){int i,j;int y[N][N];printf("\n");for(i=0; i<N; i++){y[i][0]=1;y[i][i]=1;}for(i=2; i<N; i++)for(j=1; j<i; j++)y[i][j]=y[i-1][j-1]+y[i-1][j];//前两行生成杨辉三角for(i=0; i<N; i++){for(j=0; j<=i; j++)printf("%5d",y[i][j]);//后面输出杨辉三角printf("\n");//输出后换行}return 0;}总结:得出了杨辉三角的规律才能编程

11- 1

\ /1- 2 -1

\ / \/1 -3 -3 -1

\ / \ / \ /1- 4 -6- 4 -1

\/ \/ \/ \ /1- 5- 10 -10 -5 -1

所谓杨辉三角就是一个三角相加的规律。

程序二:矩阵对角线之和

#include<stdio.h>#define M 4int main(void)//计算M行M列矩阵的对角线和的运算{int a[M][M],i,j,sum=0;printf("Data: ");for(i=0; i<M; i++)for(j=0; j<M; j++)scanf("%d",&a[i][j]);for(i=0; i<M; i++)sum+=a[i][i]+a[i][M-1-i];//当M为偶数行列时的计算if(M%2==1)sum-=a[M/2][M/2];//当M为奇数行列时的计算for(i=0; i<M; i++){for(j=0; j<M; j++)printf("%4d",a[i][j]);//输出矩阵,每4个元素换一行printf("\n");}printf("Sum=%d\n",sum);return 0;}总结:利用二维数组中的位置规律来编程,再不是等差关系

程序三:字符串操作函数

1.复制

#include<stdio.h>#include<string.h>int main(void){char c1[20]="program",c2[10]="example";strcpy(c1,c2);printf("String c1: ");puts(c1);printf("String c2: ");puts(c2);return 0;}2.连接

#include<stdio.h>#include<string.h>int main(void){char c1[20]="China",c2[10]="man";//初始化两个字符串内容strcat(c1,c2);//使用字符串函数作用printf("String c1: " );puts(c1);//输出已实现连接的字符串C1printf("String c2: ");puts(c2);//输出未实现的字符串C2return 0;}3.比较验证

#include<stdio.h>#include<string.h>#define N 3int main(void){int count=1;char word[12];while(count++<=N){printf("pass word: ");gets(word);if(strcmp(word,"bejing2008")==0)//密码输入不正确时就会重新输入break;}if(count>N+1)printf("sorry!\n");//输入密码超过三次就会输出该字体elseprintf("continue,please!\n");//正确时就继续return 0;}总结:第三个可以用以判断输入密码的正确错误

程序四:打印左右九九表

1.左对齐九九表

#include<stdio.h>int main(void){int i,j;for(i=1; i<=9; i++){for(j=1; j<=i; j++)printf("%1d*%1d=%-3d",i,j,i*j);printf("\n");}return 0;}2.右对齐九九表

#include<stdio.h>int main(void){int i,j;for(i=1; i<=9; i++){for(j=1; j<=i; j++)printf("%1d*%1d=%-3d",i,j,i*j);printf("\n");}return 0;}程序五:找出素数

#include<stdio.h>#include<math.h>int main(void){int i,k,sk,flag;for(k=100; k<=200; k++){flag=1;//设置素数标志sk=sqrt(k);for(i=2; i<=sk; i++)if(k%i==0){flag=0;//k不是素数,设置flag=0;break;}if(flag)printf("%5d",k);//如果是素数,按每行5个空格占位输出}printf("\n");return 0;//此程序设置就相当一个布尔常量的程序}总结:设置flag=1的值相当于设置为布尔常量,,判断其的真假。

程序六:一维数组实现Fibonacci数列

#include<stdio.h>int main(void){int fib[21];int i;fib[1]=1;fib[2]=1;for(i=3; i<=20; i++){fib[i]=fib[i-1]+fib[i-2];//Fibonacci数列的公式要领}for(i=1; i<=20; i++){printf("%-10d",fib[i]);//控制每个输出项占10列,按左对齐输出if(i%5==0)//每输出5个数换行printf("\n");}return 0;}程序七:字符统计

#include<stdio.h>int main(void){int count=0;char ch;printf("Input a string:" );while((ch=getchar())!='\n')//琢个读入字符串的所有字符,当字符串输入为回车键时停止,统计结束;{if(ch>='a'&&ch<='z')count++;//符合条件时才统计}printf("%d",count);return 0;}总结:其getchar的输入就像于gets(str)

如果心在远方,只需勇敢前行,梦想自会引路,

C语言学习认为比较值得重视的程序

相关文章:

你感兴趣的文章:

标签云: