C语言程序练习
1、
1 #include<stdio.h> //.h的文件是头文件;stdio 就是指 “standard input & output"(标准输入输出),因此用到标准输入输出函数时,就要包含这个头文件; 头文件定义:1、#include<stdio.h> 2、#include "stdio.h" 2 int main() //有返回值时:数据类型 函数名();如果需要带入变量: 数据类型 函数名(数据类型 变量);没有返回值可以:void 函数名();如果带变量:void 函数名 (数据类型 变量) 3 { 4 printf(" hello,word\n "); // \n是换行符,也可以分两个: printf(" hello,word "); printf(" \n"); 5 return 0 ; // return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。如果函数执行不需要返回计算结果, 6 } // 也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码) 如果你函数名前有返回类型定义,如int,double等就必须有返回值, 7 // 而如果是void型,则可以不写return,但这时即使写了也无法返回数值。
2、
1 1 //输入a,b;输出较大值;如果相同,输出0 2 2 3 3 #include<stdio.h> 4 4 5 5 int max(int,int); //C语言调用函数时,如果被调用的函数在前面定义的,则不需要声明,如果调用的函数在后面定义的,就需要申明 6 6 int main() 7 7 { 8 8 int a,b,n; 9 9 printf("please input two num:"); //printf函数,通常的用法就是没有输出数字时,直接将需要输出的内容写到引号里面,如果加了输出数字,就需要中间用逗号隔开,后面直接写输出的数 10 10 scanf("%d,%d",&a,&b); // %后面加输出数据类型,表示输出的格式;使用形式:scanf("<格式说明字符串>",<变量地址>),输入的格式要完全按照前面引号内的部分,后面是变量地址,所以普通变量需要加&,表示它的地址 11 11 n=max(a,b); 12 12 printf(" the max between %d and %d is %d ",a,b,n); //转义序列是编程语言中有特殊意义的符号标记 13 13 } 14 14 15 15 int max(int num1,int num2) 16 16 { 17 17 if(num1>num2) //if语句三种用法:if() ; if() esle ; if() else if() else 18 18 return num1; //if(内容) 的意思就是判断内容的真假,1是真,0是假,因此如果里面不是一个表达式,而是一个数字时,只要数值不是0就是真,运行if后面的,如果是0,就是假,后面不运行 19 19 else if(num1<num2) //if(a=b)和if(a==b)的区别:if(a=1)也就将b的值赋给a,然后判断a是否为0,是真是假;if(a==b)里面是判断a和b的大小,判断a是否等于b,如果等于就是真,不等于就是假 20 20 return num2; //C语言中关系运算符:大于 > , 大于等于>=, 小于 < , 小于等于<=, 等于 ==, 不等于 !=; 关系表达式的一般形式为:表达式 关系运算符 表达式; 关系表达式的值是真”和“假”,用“1”和“0”表示。 21 21 else //c语言中逻辑运算:逻辑与 &&, 逻辑或 ||, 逻辑非 !,一般形式:表达式 逻辑运算符 表达式; 22 22 return 0; //c语言位运算符:按位与 &, 按位或 |,按位异或 ^ , 取反 ~, 左移 <<, 右移 >>; 同或就是输入两边相同时为1,不同时为0; 异或就是输入两边不同时为1,相同时为0; 23 23 } 24 复制代码
3、
1 /************************************************************************************** 2 输入三角形的三边长,求三角形面积。 3 4 已知三角形的三边长a、b、c,则该三角形的面积公式为: 5 area=(s(s-a)(s-b)(s-c))1/2 6 其中s = (a+b+c)/2。 7 ***************************************************************************************/ 8 9 #include<stdio.h> 10 #include<math.h> //调用了开根号的sqrt函数,所以要添加库 11 int main() 12 { 13 float a,b,c,s,area; 14 printf(" please input the number of three sides for the triangle :\n"); 15 scanf("%f,%f,%f",&a,&b,&c); 16 s=(a+b+c)/2.0; 17 area=sqrt(s*(s-a)*(s-b)*(s-c)); //开根号sqrt,而且需要调用库函数math.h 18 printf("the number of s is:%7.2f\nthe number of area is:%7.2f\n",s,area); //%7.2表示取值整数部分7位(不足7位的少的加空格,超过7位的只取7位,小数部分2位) 19 return 0; 20 }
4、
1 /*********************************************************************************** 2 求ax2+bx+c=0方程的根,a、b、c由键盘输入,设b2-4ac>0。 3 ***********************************************************************************/ 4 #include<stdio.h> 5 #include<math.h> 6 int main() 7 { 8 float a,b,c,d,e,x1,x2; 9 printf("please input the three number a, b, c in ax^2+bx+c=0 :\n"); 10 scanf("%f,%f,%f",&a,&b,&c); 11 if(b*b-4*a*c<0) //注意,C语言中求平方没有直接的^这样,可以pow(x,y)就是x的y次方,需要调用math.h库 12 { 13 d=-b/(2.0*a); 14 e=sqrt(4*a*c-b*b)/(2.0*a); 15 printf("the root is: x1=%7.2f+%7.2fi, x2=%7.2f-%7.2fi\n",d,e,d,e); 16 } 17 else if(b*b-4*a*c==0) 18 { 19 d=-b/(2.0*a); 20 printf("the root is: x1=x2=%7.2f\n",d); 21 } 22 else 23 { 24 d=-b/(2.0*a); 25 e=sqrt(b*b-4*a*c)/(2.0*a); 26 printf("the root is: x1=%7.2f, x2=%7.2f\n",d+e,d-e); 27 } 28 return 0; 29 }
浙公网安备 33010602011771号