编程基础之综合应用 C语言

编写题解 2947: 不吉利日期

#include<stdio.h>
int main()
{
    int w,i;
    scanf("%d\n",&w);//某年的一月一日是星期w
    int num=13;
    for(i=1;i<=12;i++)//定义一年当中12个月
    {
        if((num-(7-w+1))%7==5)//此处为计算每月13是否是周五的判断条件
        //看第一个的13,然后一月一日是星期w,要想结束这个包含w的星期,则需要
        //让13减去w这一天以及后面的几个星期几,然后再开始进行%7循环
        printf("%d\n",i);
        
        if(i==1 || i==3 || i==5 || i==7 || i==8 || i==10 || i==12)
        num=num+31;
        else if(i==4 || i==6 || i==9 || i==11)
        num=num+30;
        else
        num=num+28;
    }
    return 0;
}

题目 2948: 八进制小数

#include<stdio.h>
#include<math.h>
#include<string.h>//strlen()的头文件
int main()
{
    double d,num=0;
    int i;
    char b[20];
    scanf("%s",b);
    int a=strlen(b);

    for(i=2;i<a;i++)
    {
        num=num+(b[i]-'0')*pow(0.125,i-1);//字符进行计算的时候,一定要记得减'0';
    }
    
    //7*0.125+5*0.125*0.125;
    
    printf("%s [8] = %.45g [10]",b,num);//%.45g省略掉小数后面多余的0
    return 0; 
}
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
 
int main(){
	int a[26]={0};
	char b[81];
	int i,j,m=0;
	for(i=0;i<4;i++){
	//	for(j=0;j<81;j++) b[j]=0;
		gets(b);
		for(j=0;b[j]!='\0';j++){
		   if(b[j]>='A'&& b[j]<='Z')
		   	   a[b[j]-'A']++;
		}
	} 
	for(i=0;i<26;i++){
		if(a[i]>m) m=a[i];
	}
	for(i=m;i>0;i--){
		for(j=0;j<26;j++){
			if(a[j]>=i)	printf("* ");
			if(a[j]<i) printf("  ");		
		}
		printf("\n");
	}
	for(i=0;i<26;i++) printf("%c ",'A'+i);
	printf("\n");
}

题目 2949: 垂直直方图  最后一个其实是编译错误的,因为我并不能把*号和A-Z字母对齐,我看了很多博主的,然后输入进去也是不可以,求解.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值