- 第一题
#include<stdio.h> //这是头文件,每个头文件包含着一定函数,想要用对应函数就得#include<>
//下文的scanf(输入) printf(格式化输出) 都是在stdio.h中的
int main(){
int a,b;
scanf("%d%d",&a,&b);//输入两个数字ab %d代表了是十进制整数
printf("%d\n",a+b); //输出a+b \n是换行的意思
return 0;//程序最后加上这个
}
很干脆的输入输出
但是我想借此说明一下c语言程序
- 第二题
#include<stdio.h>
int main(){
int a,b;
scanf("%d%d",&a,&b);
printf("%d\n",a*b);
return 0;
}
同上一题,+ 变成了 * 罢了
- 第三题
#include<stdio.h>
int main(){
char s[10]; //开大点防止爆
scanf("%s",s);//输入字符串
printf("%c.%c%c%c\n",s[4],s[2],s[1],s[0]);
//%c是字符
return 0;
}
事实上这题没必要用到数组,
#include<stdio.h>
int main(){
char a,b,c,d;
scanf("%c%c%c.%c",&a,&b,&c,&d);
printf("%c.%c%c%c",d,c,b,a);
return 0;
}
甚至我们可以不用字符
这道题虽然是小数的翻转,但是经过一定的变化也可以看成整数翻转(在网课中有提到)
#include<stdio.h>
int main(){
double s;
scanf("%lf",&s);
int k=s*10;//一位小数转换成整数进行处理
int ans=(k%10)*1000+(k%100)/10*100+(k%1000)/100*10+k/1000;
printf("%.3lf\n",ans/1000.0);//.3保留3位小数,(根据题意可以得出必然会有三位小数)
return 0;
}
- 第四题
#include<stdio.h>
#include<math.h>//出现了第二个头文件
//我下面用到的sqrt 开方函数就是在这里被定义的
int main(){
double a,b,c;
scanf("%lf%lf%lf",&a,&b,&c);
//输入 double 用%lf
double p=0.5*(a+b+c);
printf("%.1lf\n",sqrt(p*(p-a)*(p-b)*(p-c)));
//保留一位小数就%".1"lf
return 0;
}
- 第五题
我认为的有点难度,但是可能对于各位巨巨来说just so so
问还有几个完整的苹果,那么吃到一半的就要被减掉,在代码中的体现就是ans的向上取整
ans代表了吃了几个
如果ans>=m就是吃完了
小于的话就减去吧
注意特判,不然会re
#include<stdio.h>
int main(){
int m,t,s;
scanf("%d%d%d",&m,&t,&s);
if(t==0)printf("0\n");//防止除0,算是一个特判
else{
int ans=(s+t-1)/t;//这样处理可以使s/t变成向上取整
if(ans>=m)printf("0\n");//如果吃多了就0了
else printf("%d\n",m-ans);
}
return 0;
}
恭喜大家在c语言的学习中踏出了第一步