精华内容
下载资源
问答
  • 2018-06-06根据输入的年月日,输出该日为该年度的第几周、第几天、//根据输入的年月日,输出该日为该年度的第几周、第几天、星期几。 //如输入: 2007,12,1 //则输出: 48z,335t,6xqint date[12]={31,28,31,30,31,...

    76d09982aae9d437fc0b80239e11e9af.png

    2018-06-06

    根据输入的年月日,输出该日为该年度的第几周、第几天、

    //根据输入的年月日,输出该日为该年度的第几周、第几天、星期几。 //如输入: 2007,12,1 //则输出: 48z,335t,6xqint date[12]={31,28,31,30,31,30,31,31,30,31,30,31};#includeint Check(int a,int b,int c);//判断输入的合法性int CountWeek(int a,int b,int c);//判断第几周int CountDay(int a,int b,int c);//计算第几天int CountWeekday(int a,int b,int c);//计算星期几int LeapY...全部

    //根据输入的年月日,输出该日为该年度的第几周、第几天、星期几。 //如输入: 2007,12,1 //则输出: 48z,335t,6xqint date[12]={31,28,31,30,31,30,31,31,30,31,30,31};#includeint Check(int a,int b,int c);//判断输入的合法性int CountWeek(int a,int b,int c);//判断第几周int CountDay(int a,int b,int c);//计算第几天int CountWeekday(int a,int b,int c);//计算星期几int LeapYear(int a){int x=(!(a%4)&&(a0)||!(a@0))?1:0;return x;}int main(void){ int year,month,day; do{ printf("请输入年,月,日:"); scanf("%d%d%d",&year,&month,&day); //printf("%d

    ",Check(year,month,day)); if(Check(year,month,day)!=0) printf("你输入错误,请重新输入。

    "); }while(Check(year,month,day)!=0); printf("第%d周 第%d天 星期%d

    ",CountWeek(year,month,day),CountDay(year,month,day),CountWeekday(year,month,day)); return 0; }int Check(int a,int b,int c)//如果输入的日期不合法,则返回1,否则返回0{ if(a9999) return 1; //年输入不合法 else { if(b12) return 1; //月输入不合法 else { date[1]=(!(a%4)&&(a0)||!(a@0))?29:28; if(cdate[b-1]) return 1; else return 0; } } }int CountDay(int a,int b,int c){ int x=c; int IsLeapYear=(!(a%4)&&(a0)||!(a@0))?1:0; if(IsLeapYear==1) date[1]=29; for(int i=0;i7) y-=7; } return y;}。

    收起

    展开全文
  • 进制转十进制 #include <stdio.h> #include <math.h> int main(){ printf("请输入一个八进制数"); int count,result; int i=0,j, a[100]; scanf("%d",&count); while(count!=0){ a[i]=...

    八进制转十进制

    #include <stdio.h>
    #include <math.h>
    int main(){
    	printf("请输入一个八进制数"); 
    	int count,result;
    	int i=0,j, a[100];
    	scanf("%d",&count);
    	while(count!=0){
    		a[i]=count%10;
    		count-=a[i++];
    		count=count/10;
    	}
    	result=0;
    	for(j=0;j<i;j++){
    		result+=a[j]*pow(8,j);		
    	}
    	printf("十进制为:%d",result);
    } 
    
    展开全文
  • C语言 · 十进制转八进制

    千次阅读 2017-02-18 13:24:00
    算法提高 十进制转八进制数 时间限制:1.0s 内存限制:512.0MB   编写函数,其功能为把一个十进制数转换为其对应的八进制数。程序读入一个十进制数,调用该函数实现数制转换后,输出对应的八进制数。 样例...
    算法提高 十进制数转八进制数  
    时间限制:1.0s   内存限制:512.0MB
        
    编写函数,其功能为把一个十进制数转换为其对应的八进制数。程序读入一个十进制数,调用该函数实现数制转换后,输出对应的八进制数。
    
    样例输入
    9274
    样例输出
    22072 样例输入
    18
    样例输出
    22

    笔者注释:
    法一:先转成2进制,再转成8进制。
    法二:printf("%o\n",x)。

    法一代码:
     1 #include<stdio.h>
     2 void decshow(int x){
     3     if(x>1){
     4         decshow(x/8);
     5     }
     6     printf("%d",x%8);
     7 }
     8 int main(){
     9     int x;
    10     scanf("%d",&x);
    11     decshow(x);
    12     printf("\n");
    13 }
    
    
    法二代码:
    1 #include<stdio.h>
    2 int main(){4         int x;
    5         scanf("%d",&x);
    6         printf("%o\n",x);
    9 }

     

     
    展开全文
  • C语言——十进制转为二进制、八进制、十六进制的函数转换 /*** * Copyright(C) 2011, SKYCNC * All rights reserved * * 程序名称:dec_to_bin_oct_hex * 功 能:输入一个十进制数,将其转化为二进制、...

    C语言——十进制转为二进制、八进制、十六进制的函数转换

    /***
    * Copyright(C) 2011, SKYCNC
    * All rights reserved
    *
    * 程序名称:dec_to_bin_oct_hex
    * 功    能:输入一个十进制数,将其转化为二进制、八进制、十六进制
    *
    * 作    者:zhanghbboy
    * 完成日期:11.07.27
    *
    ***/
    #include<stdio.h>
    #include<string.h>
    #include<math.h>
    void dec_to_bin(int x); //函数调用定义
    void dec_to_oct(int x);
    void dec_to_hex(int x);
    int main(void)  // 计算机中,int 占用4个字节- -
    {
         int decNum;
         printf("请输入一个十进制整数:\n");
         scanf("%d", &decNum);
         dec_to_bin(decNum);
         dec_to_oct(decNum);
         dec_to_hex(decNum);
         return 0;
    }
    void dec_to_bin(int x)
    {
         char *table="01";
         char array[33];
         int num;
         num = x;
         array[32] = '\0';
         int i = 31;
         if (x > 0)
         {  
              memset(array,'0',32);
              while(x)
              {
                   array[i--] = table[x % 2];
                   x = x/2;
              }
         }
         if (x < 0)
         {
              memset(array,'1',32);
              int j;
              for(j=0; j<32; j++)
              {
                   array[i--] = table[x & 0x01];
                   x >>= 1;
              }
         }
         printf("十进制数%d <======>对应二进制为%s\n", num, array);  
    }
    void dec_to_oct(int x)
    {
         char *table = "01234567";
         char array[12]; //数组设定为12.是因为除了结束符之外,考虑到负数的输入,
                     //其转化为补码再转为八进制数出,32位每三个取组成一个8进制数。因此元素为11个。
         int num;
         num = x;
         array[11] = '\0';
         int i = 10;
         if (x > 0)
         {
              memset(array,'0',11);
              while(x)
              {
                   array[i--] = table[x % 8];
                   x = x/8;
              }
          }
         if (x < 0)
         {
              memset(array,'1',11);  
              int j;
              for(j=0; j<10; j++)// 32/3 = 10;
              {
                   array[i--] = table[x & 0x07];
                   x >>= 3;
               }
              array[i] = table[x & 0x03];
         }
         printf("十进制数%d <======>对应八进制为%s\n", num, array);  
    }
    void dec_to_hex(int x)
    {
         char *table = "0123456789abcdef";
         char array[9];
         array[8] = '\0';
         int i = 7, num;
         num = x;
         if (x > 0)
         {
              memset(array,'0',8);
              while(x)
             {
                  array[i--] = table[x % 16];
                  x = x / 16 ;
             }
         }
         else
         {
              memset(array,'1',8);
              int j;
              for(j=0; j<8; j++)
              {
                   array[i--] = table[x & 0x0f];
                   x >>= 4;
               }
         }
         printf("十进制数%d <======>对应十六进制为%s\n", num, array);
    }

    /***

    *

    *  输出结果

    *

    ***/

     

    /***

    *

    *  说明:int 所占内存几个字节跟机器有关,我的是win32. int占4位,在VC++环境下编译正确

    *

    ***/

    展开全文
  • C语言用递归实现十进制转八进制

    千次阅读 2020-06-04 18:28:36
    //编写函数 convert,将输入十进制整数转换为八进制并输出。 #include<stdio.h> int convert(int n) { int temp; if(n==0) { return 0; } else { temp=n%8; //入栈 6 2 2 .
  • 1 //编写程序,实现输入一个10进制数,输出相应的8进制和16进制 2 #include<stdio.h> 3 void main() 4 { 5 int a,x,y; 6 printf("please input a integer:\n"); 7 scanf("%d",&a); 8 printf("%o,%x...
  • 设计初衷: 作为一名嵌入式程序员,进制转换是入门必修课,而学习计算机也是必须要懂的最基础...编写一个程序,实现二进制、八进制十进制、十六进制的相互转换。 提示:输入的数值后面的字母表示进制数,56D便是...
  • #include<stdio.h> #include<string.h> #include<math.h> int main(){ ... printf("请输入一个八进制数:"); gets(s); for(i=0;i<strlen(s);i++){ if(s[i]>='A'&...
  • #include<stdio.h> #include<stdlib.h> #define N 10 //N 可为任意整数 main() { int k,a[N],i=0,j;... printf("请你输入一个十进制整数\n");... printf("十进制数 %d,等于八进制数 %o...
  • 输入十进制数:");  scanf("%d",&n);  printf("八进制为:%o\n",n);  printf("十六进制为:%x\n",n);  while(n!=0)  {...
  • 二进制:以0b开头,只有0和1两种数字.如0101 ...一个八进制可以由3个二进制表示 一个十六进制可以有4个二进制表示 基本数据类型:大体上分为整型和浮点型 字节:计算机中最小的储存单位
  • 输入4位八进制数,打印它的十进制 #include <stdio.h> int main(void) { int a,b,c,d,e,f; printf("请输入一个4位八进制整数\n"); scanf("%d",&f); a=f/1000; b=(f%1000)/100; c=(f%100)/10; d=f...
  • //算法3.1:对于输入的任意一个非负十进制数,打印输出与其等值的八进制数 { SqStack S; int N; SElemType m; InitStack(&S); printf("▲请输入要转换的十进制数:"); scanf("%d",&N); while(N) { m=N%8; ...
  • c语言栈实现十进制转换为二进制,八进制和十六进制 写一个程序,将输入十进制数据M 转换为八进制数据M8,将其调试通过.在此基础上修改程序,实现十进制数据M 向N 进制(2或8或16)的转换. #include<stdio.h> #...
  • 进制转换及补码位运算符约翰·冯·诺依曼(JohnVonNouma,1903-1957),美藉匈牙利人被称为计算机之父:...要用4个二进制数表示,(1)16 = (0001)2 前面补齐二进制 逢 二进一十进制 逢 十进一 dec八进制 逢 八进一 oct...
  • //输入一个十进制整数,分别转换输出十六进制和八进制。 //二进制(B)、八进制(O)、十进制(D)、十六进制(前缀OX,后缀H)之间的转化 #include <stdio.h> int main () { int x; printf("请你输入x:...
  • #include<stdio.h>... puts("请输入一个4位八进制整数\n"); scanf("%d",&num); do { sum += (num%10)*j; j*=8; num/=10; } while(--i); printf("该数对应的十进制数为:%d\n",su.
  • C语言进制转换

    2021-05-12 23:31:03
    注意:不同进制可能不能直接转换,如八进制与十六进制 【输入形式】输入只有一行,包含三个整数a,n,b。a表示其后的n是a进制整数,b表示欲将a进制整数n转换成b进制整数 a,b是十进制整数,且2=<a,b<=16 ...
  • 十六进制转十进制 问题描述  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 样例输入 FFFF 样例...
  • C语言,将一个八进制数转换为十进制数(含延伸) 设计思路,将八进制数用字符串的形式输入储存,然后按照每一位对应的8的指数级与该位相乘,再把每一位的结果相加,得到需要转换的十进制数。 #include<studio.h&...
  • 思路:先将二进制转换为十进制(详细参考我的这篇博客 二、十进制相互转换),然后将十进制转换为八进制(这个我们很熟悉)。 具体代码如下: #include <stdio.h> #include <math.h> int main() { long...
  • c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。
  • 1、输入格式和输出格式,决定了需要用数组存储十六进制数、二进制数以及八进制数。由于有多个字符串(多位十六进制数),故采用二维数组。 2、十六进制数由数字和字母“A/B/C/D/E/F”组成,在将十六进制转为二进制时...
  • 输入一个八进制整数,转换成十进制并输出 代码: #include<stdio.h> #include<math.h> int conversion(int x); int main() { int x,d; scanf("%d",&x); d = conversion(x); printf("%d\n",d); ...
  • 编写函数把一个十进制数输出其对应的八进制数。 样例输入 9274 样例输出 22072 #include<stdio.h> int main(int argc,char *argv[]) { int r; scanf("%d",&r); printf("%o",r); return 0; } ...
  • 编程,输入一个10进制正整数,然后输出它所对应的八进制数。 输入 无 输出 无 样例输入 10 样例输出 12 #include <stdio.h> int main( ) { int num,m=0,a[100],i=0,k=0; //num由键盘...
  • C语言各种进制转换,函数调用

    千次阅读 2015-11-23 18:09:06
    #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; //实现功能10-&gt;2,10-&gt;8,10-&gt;16,16-&gt;10,16-&...//C语言中%d直接输入十进制数,%o输入八进制数,...

空空如也

空空如也

1 2 3 4 5 6
收藏数 120
精华内容 48
关键字:

c语言输入十进制转八进制

c语言 订阅