
C练习
keyunq
这个作者很懒,什么都没留下…
展开
-
C的一些简单习题(1)求2/1,3/2,5/3,…………前20项的和
#include void main(){float sum;int div,dived,tmp;dived=2;div=1;int i;sum=0;i=1;while(i{ sum=sum+(float)dived/(float)div; tmp=div; div=dived; dived=dived+tmp; i++;}printf("the sum is %f",sum);}原创 2005-12-17 22:44:00 · 1494 阅读 · 0 评论 -
C的一些简单习题(12)--条件编译
//条件编译,是否译成密码#include #define change 0main(){char s[20];char c;int i=0;printf("输入原文:");gets(s);while((c=s[i])!=/0){i++;#if change if(c>=a&&c { c=c+1; } else if(c=z) { c=c-25; }#endifprintf("%c原创 2006-01-02 13:04:00 · 936 阅读 · 0 评论 -
C的一些简单习题(11)--带参数的宏
//带参数的宏,求三角形面积#include #include #define s(a,b,c) (a+b+c)/2#define area(a,b,c) sqrt(s*(s-a)*(s-b)*(s-c))main(){float a,b,c,area,s;printf("输入三角形三条边的值:/n");printf("a=");scanf("%f",&a);printf("b=");scanf(原创 2006-01-02 13:02:00 · 1081 阅读 · 0 评论 -
C的一些简单习题(8)--静态变量求n!
//静态变量求n!#include int fac(int n){static int f=1;f=f*n;return(f);}main(){printf("输入n的值:");int i,n;scanf("%d",&n);for(i=1;iprintf("%d!=%d/n",i,fac(i));}原创 2005-12-23 12:28:00 · 1505 阅读 · 0 评论 -
C的一些简单习题(7)--递归法求n!
//递归法求n!#include float fac(int n){float f;if(nelse if(n==0||n==1)f=1;else f=fac(n-1)*n;return(f);}main(){int n;float y;printf("输入一个正整数:");scanf("%d",&n);y=fac(n);printf("%d!=%10.0f",n,y);}原创 2005-12-23 12:02:00 · 2538 阅读 · 0 评论 -
C的一些简单习题(10)--n阶勒让德多项式
//n阶勒让德多项式#include float p(float x,int n){float p_n; if(0==n) {p_n=1;} else if(1==n) { p_n=x; } else { p_n=((2*n-1)*x-p(x,n-1)-(n-1)*p(x,n-2))/n; } return p_n;}main(){ int n; printf("input n :"); sc原创 2005-12-25 22:56:00 · 2487 阅读 · 0 评论 -
C的一些简单习题(9)--牛顿迭代法求根
//牛顿迭代法求根#include #include float root(float i,float a,float b,float c,float d){float x,x0,f1,f2;x=i;do{ x0=x; f1=x*(x*(a*x+b)+c)+d; f2=x*(3*a*x+2*b)+c; x=x0-f1/f2;}while(fabs(x-x0)>1.e-6);return x;}ma原创 2005-12-25 21:26:00 · 4839 阅读 · 1 评论 -
C的一些简单习题(4)--连接两个字符串
//连接两个字符串,不用strcat函数#include #include main(){int i,j;char s1[20];char s2[20];printf("请输入字符串s1:");gets(s1);printf("请输入字符串s2:");gets(s2);printf("连接后的字符串为:");for(i=0;s1[i]!=/0;i++){}for(j=0;j{ s1[i]=s2原创 2005-12-20 18:24:00 · 1425 阅读 · 2 评论 -
C的一些简单习题(6)--冒泡排序
//冒泡排序#include main(){int a[11];int i,j,t;bool flag;printf("输入10个数:");for(i=1;i scanf("%d",&a[i]);printf("/n");flag=true;for(j=1;j{ flag=false; for(i=1;i { if(a[i]>a[i+1]) {t=a[i];a[i]=a[i+1];a[i+原创 2005-12-21 23:49:00 · 1156 阅读 · 0 评论 -
C的一些简单习题(5)--两个字符串比较
//比较字符串#include #include main(){char s1[20];char s2[20];int i,j;printf("输入字符串s1:");gets(s1);printf("输入字符串s2:");gets(s2);for(i=0;istrlen(s2))?strlen(s1):strlen(s2));i++){ if(s1[i]>s2[i]) { printf("%d"原创 2005-12-21 23:26:00 · 1363 阅读 · 0 评论 -
C的一些简单习题(2)--求圆周率
#include #include void main(){int s;float n,t,pi;t=1,pi=0;n=1.0;s=1;while(fabs(t)>1e-6){ pi=pi+t; n=n+2; s=-s; t=s/n;}pi=pi*4;printf("pi=%10.6f/n",pi);}原创 2005-12-17 22:53:00 · 1382 阅读 · 0 评论 -
C的一些简单习题(3)--打印杨辉三角形(10行)
#include #define M 10void main(){int i,j;int a[M][M];for(i=0;i{ if(i==0) { a[0][i]=1; } else { a[0][i]=0; }}for(i=1;i{ a[i][0]=1; for(j=1;j { a[i][j]=a[i-1][j]+a[i-1][j-1]; }}for(i=0;i{ for(j=0;j {原创 2005-12-17 22:55:00 · 1605 阅读 · 0 评论 -
C的一些简单习题(13)--数组a中n个整数按相反顺序存放
//数组a中n个整数按相反顺序存放#include void inv(int x[],int n){int temp,i,j,m=(n-1)/2;for(i=0;i{ j=n-1-i; temp=x[i]; x[i]=x[j]; x[j]=temp;}return;}main(){ int i,a[10]={3,7,9,11,0,6,7,5,4,2}; printf("The original a原创 2006-01-11 11:46:00 · 2623 阅读 · 0 评论