《c语言2分析和总结.docx》由会员分享,可在线阅读,更多相关《c语言2分析和总结.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、字符数组和字符指针Charc3:定义了一个字符数组,包括3个字 符变量,分别是cO5c15c2Charc3=,a J b”c ;Char c3;c0= a* b* ,c2=c字符数组可以当做一个字符串来使用Char c5=abcde”Char *p;p=c;printf(sc);玲 abcdeprintf(“c”,c1);9bprintf (d;c1 );998A的ascii码值是65, a的ascii码值是97, 0的ascii码值是48,依次类推printf(“c1*(p+1 );fbprintf(dl *(p+1);398printf(“s”, p+2);3cde字符指针可以直接用字符串
2、进行赋值:Char *p=abcde”;P就指向了这个字符串的首地址,即第一个 字符的地址Int m;Scanf(cT,&m);Printf(df(m);Char *p;p=abcdef”;Char c=12345678Printfr%d,p1);98Printf(c”J(p+1);TbPrintf(“d”,*(c+1)1 字符” 2 的 ascii 码值, 50Printf(“c”, 2Printf(ld”,p);少字符串的首地址Printf(ld”, c+2); 3” 的地址Printf(s”,p+);abcdefPrintf(s”, c+2);9345678函数:一个C语言程序由一个或多
3、个文件组成, 个文件由一个或多个函数组成。#include#include Void main()#include: printf() ,scanf()函数的分类:库函数:编译系统事先定义好的函数,比方printf(),scanf()主函数:main(),一个c程序有且仅有一个主 函数自定义函数自定义函数的三步:声明,定义,调用#includeVoid main()int max(int?int);Int x,y,z;Scanf(%d,%d,%d”,&x,&y,&z);Printf(“the maxis:=%d,max(max(x,y)?z);Int max(int a?intb)If(ab)
4、return(a);elesreturn(b);)以下程序中函数s。什的功能是对。数组中的数据进行 由大到小的排序void sort (int a jnt n)int izj,t; for(i=0;in-l ;i+)for (j=i+l;jn;j+)if (a i a j ) t=a i ;a i =a j ;a j =t;)main ()int aa 10=1,2,3,4,567,8,9,10,i;sort (&aa 3 ,5) ; for (i=0;i10;i+) printf(%dzzaa i ) ; printf (n);)程序运行后的输出结果是A) 123,4,567,8,9,10,
5、B) 10,9,8,7,6,5,4,3,2,1,C) 123,8,765,4,9,10,D) 1210,9,8,7,6,5,4,3,以下程序执行后的输出结果是void fund (inti);void func2 (inti);char st -hello,friend!;void fund (int i) printf i ) ; if (i3)i+=2;func2 (i) ;)void func2 (int i) printf (c”,st i ) ; if (i3)i+=2;funcl (i) ;)main ()inti=O;funcl (i) ;printf (n) ; A) hell
6、ohelB) hlohim有以下程序int f (int n)if (n=l) return 1;else return f (n-1) +1;main ()int izj=0; for (i=l;i3;i+) j+二f(1) ; printf (%dnnzj);)程序运行后的输出结果是4A) 32B) 1以下程序的输出结果是int b=2;int func (int *q) b += *a; return (b) ; main ()int a=2, res=2;res + = func (&a);printf (%d n,res);)4B)6 C) 8 D)10以下程序的输出结果是void
7、reverse (int a ,intn)int izt; for(i=0;in/2;i+)t=a i ; a i =a n-l-i ;a n-l-i =t;)main ()int bl0=123,4,5,6,7,8,9,10; int i,s=0;reverse (b,8) ; for (i=6;i2) return (fib (n-1) +fib else return (2);)main ()printf (%dn,fib (3) ) ; 该程序的输出结果是A) 24B) 68递归调用:自己调用自己 现在要计算n的阶乘:n! n*(n-l)!(n-l)*(n-2)!(n-2)*(n-3)!(n-3)*(n-4)! 2*1!1!=1Int f(int n)(Int fa;|f(n=1 |n=0)fa=1;elsefa=n*f(n-1);return (fa);)Void main()