C语言学习之51nod部分习题编码

本篇文章是自己在C语言学习中做过的一些习题,随时补充,不定时更新!!!

2135 价钱统计 浮点数误差处理

#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>

int main() {
float a,b,c,d;
scanf("%f%f%f%f",&a,&b,&c,&d);
printf("%.1f\n",a*1.2+0.01);
printf("%.1f\n",b*3.5+0.01);
printf("%.1f\n",c*4.5+0.01);	
printf("%.1f\n",d*5.0+0.01);
printf("%.1f\n",a*1.2+b*3.5+c*4.5+d*5.0+0.01);
	return 0;
}

2118 完全平方数 浮点数转整数或者循环处理

#include<stdio.h>
#include<math.h>
int main(){
    long long x,test;
    scanf("%lld",&x);
    test=sqrt(x);
    if(test*test==x) printf("%lld\n",test);
    else printf("No",x);
}

2101 越界了吗 整数溢出

   #include <stdio.h>
    #include <string.h>
    #include <math.h>
    #include <stdlib.h>
    
    int main() {
    	long long a,b;
    	scanf("%lld%lld",&a,&b);
    	if(a+b>2147483647 || a+b<-2147483648)
    	printf("Yes\n");
    	else printf("No\n");
    	}

2119 吃龙虾 注意整数溢出

#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>

int main() {
    int n,m;
    scanf("%d%d",&n,&m);
    int a[n];
    long long sum=0;
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
        if(a[i]>=m) sum+=a[i];
    }
    printf("%lld\n",sum);
}

2112 转二进制

#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>

int main() {
	int n;
    scanf("%d",&n);
    int a[1000];
    int i=0;
while(1){
   a[i]=n%2;
    n=n/2;
    if(n==0)break;
    i++;
    }
    for(int j=i; j>=0; j--)
    printf("%d",a[j]);
    return 0;
    }

猜你喜欢

转载自blog.csdn.net/weixin_44306061/article/details/89196541
今日推荐