目录
引入
?常用数学函数
例题
for循环
前n项和
n的阶乘
乘方表与阶乘表
分支结构
if-else
?switch
?循环结构
while
?do-while
for
break
嵌套循环
最值
逆序
?斐波那契数列
暴力枚举
函数
全局变量与局部变量
静态变量
?数组
?选择排序法
二维数组
第几天
回文
字符串转十进制
字符串逆序
该部分概括了“C语言(何钦铭 颜晖)”的第一至五章,和第七章(不包含习题部分)
引入
?常用数学函数
例题
#include <stdio.h>
#include <math.h>
int main(){
double x,y;
scanf("%lf",&x);
if(x<0){
y=pow(x,5)+2*x+1.0/x;
}
else{
y=sqrt(x);
}
printf(".2lf",y);
return 0;
}
for循环
前n项和
#include <stdio.h>
int main(){
int n;
double sum=0;
scanf("%d",&n);
int flag=1;//标记正负号
for(int i=1;flag<=n;i+=2){
if(flag%2!=0){//flag为奇数
sum+=1.0/i;
}
else {
sum-=1.0/i;//flag为偶数
}
flag++;
}
printf("%lf",sum);
return 0;
}
n的阶乘
乘方表与阶乘表
#include <stdio.h>
#include <math.h>
int main(){
int n;
scanf("%d",&n);
for(int i=0;i<=n;i++){
printf("2^%d = %.lf\n",i,pow(2,i));
}
return 0;
}
?pow的返回为double类型,若使用以下语句则输出都为0
printf("2^%d = %d\n",i,pow(2,i));
#include <stdio.h>
#include <math.h>
double fact(int n){
double ans=1;
for(int i=1;i<=n;i++){
ans*=i;
}
return ans;
}
int main(){
int n;
scanf("%d",&n);
for(int i=0;i<=n;i++){
printf("%d! = %.lf\n",i,fact(i));
}
return 0;
}
分支结构
if-else
#include <stdio.h>
int main(){
int letter=0,digit=0,other=0;
char a;
for(int i=0;i<10;i++){
a=getchar();
if((a>='a'&&a<='z')||(a>='A'&&a<='Z')) letter++;
else if(a>='0'&&a<='9') digit++;
else other++;
}
printf("letter=%d\n",letter);
printf("digit=%d\n",digit);
printf("other=%d\n",other);
return 0;
}
?switch
#include <stdio.h>
int main(){
double a,b;
char c;
scanf("%lf%c%lf",&a,&c,&b);
switch(c){
case '+':
printf("%lf + %lf = %lf\n",a,b,a+b);
break;
case '-':
printf("%lf - %lf = %lf\n",a,b,a-b);
break;
case '*':
printf("%lf * %lf = %lf\n",a,b,a*b);
break;
case '/':
if(b==0) printf("error\n");
else printf("%lf / %lf = %lf\n",a,b,a/b);
break;
}
return 0;
}
?循环结构
while
?
#include <stdio.h>
int main(){
double sum=0;//分数之和,定义为double类型
int i=1,j=1;//i为分母 ,j用来区分奇数项还是偶数项
while(1.0/i>1e-6){//题目要求精确到小数点后4位,比题目要求更精确方便四舍五入
if(j%2!=0){//奇数项
sum+=1.0/i;
}
else{
sum-=1.0/i;
}
i+=2;//i每次加2
j++;
}
double ans=sum*4;
printf("%.4lf",ans);//控制输出小数点后4位
return 0;
}
?do-while
for
break
嵌套循环
?
最值
逆序
?
?斐波那契数列
暴力枚举
函数
全局变量与局部变量
静态变量
?数组
?选择排序法
?
二维数组
第几天
回文
字符串转十进制
字符串逆序
END
|