输入一个十进制整数,输出其对应的二进制数,用C语言的函数知识。 C语言,编一程序用递归函数,把输入的一个十进制整数转换成二进...

C\u8bed\u8a00\u7f16\u5199\u7a0b\u5e8f\uff0c\u4ece\u952e\u76d8\u8f93\u5165\u4e00\u4e2a\u4e8c\u8fdb\u5236\u6b63\u6574\u6570\uff0c\u8f93\u51fa\u5176\u5bf9\u5e94\u7684\u5341\u8fdb\u5236\u6570

\u95ee\u9898\u5927\u7740\u5462\uff0c\u4f60\u53ea\u8fd4\u56de\u4e86\u4e00\u4e2a\u6570\u800c\u5df2\uff0c\u5e94\u8be5\u8fd4\u56de\u4e00\u4e2a\u6570\u7ec4 #include void main() { void fun(int m,int *j,int c[]); int m; int i; int c[100]={0};//\u7528\u6765\u88c5\u4e8c\u8fdb\u5236\u6570 int count = 0;//\u7528\u6765\u7edf\u8ba1\u6709\u6548\u4f4d\u6570 printf("\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236\u6574\u6570:\n"); scanf("%d",&m); fun(m,&count,c); for(i = 0; i 0;i++) { n=m%2; m=m/2; a[i]=n; *j=*j+1; } for(i=*j-1;i>=0;i--) { c[k++]=a[i]; } }

#include

void f(int n)
{
if(n) f(n/2);
else return;
printf("%d",n%2);
}

int main()
{
int n;
while(1)
{
scanf("%d",&n);
if(n<0) break;
if(n==0) printf("0");
f(n);
printf("\n");
}
return 0;
}

#include<stdio.h>

int main()

int i,j,n,m=-1,a[16];

printf("请输入十进制数");

scanf("%d",&n);

while(n!=0)

i=n%2;

a[++m]=i;

n=n/2;

for(j=m;j>=0;j--)

printf("%d",a[j]);

return0;

扩展资料:

main函数用法

1、C++中的main函数

C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,

不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。

C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。

2、Java中的main函数

Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。

首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。

其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。

第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。

第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)

Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)

public class MainDemo{

public static void main(String[]args){

//TODO:在此处写入主函数的内容

}

}

Java Applet的运行机制与Java Application完全不同,因此不需要main函数

3、C#中的main函数

C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,

与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)

另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。

C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)

C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。

class Program{

static void Main(string[]args){



问题大着呢,你只返回了一个数而已,应该返回一个数组
#include<stdio.h>
void main()
{
void fun(int m,int *j,int c[]);
int m;
int i;
int c[100]={0};//用来装二进制数
int count = 0;//用来统计有效位数
printf("输入一个十进制整数:\n");
scanf("%d",&m);
fun(m,&count,c);
for(i = 0; i < count; i++)
printf("%d",c[i]);
printf("\n");
}
void fun(int m,int *j,int c[])
{
int a[100],n,i,k=0;
for(i=0;m>0;i++)
{
n=m%2;
m=m/2;
a[i]=n;
*j=*j+1;
}
for(i=*j-1;i>=0;i--)
{
c[k++]=a[i];

}
}

#include "stdafx.h"
#include <windows.h>
#include <stdlib.h>
#include <stdio.h>
char* fn(int n,int count )
{
char hex[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
char result[32]={'0'};
char rst[32]={'0'};
int remainder;
int i=0,j=0;
while(count>0)
{

remainder=count%n;
rst[i]=hex[remainder];
i++;
count=count/n;
}
for(j=0;j<i;j++)
{
result[j]=rst[i-j-1];
}
return result;
}
int main(int argc, char* argv[])
{
int cnt,cn;
char a[32];
printf("输入的整数或者进制数为零表示退出程序\n");
while(1)
{
printf("请输入一个32位范围内整数");
scanf("%d",&cnt);
printf("请输16以内的转换进制");
scanf("%d",&cn);
if(cnt==0||cn==0)
break;
else
{
strcpy(a,fn(cn,cnt));
printf("您输入的整数%d 转换为%d进制的结果为%s\n\n",cnt,cn,a);
}
}
system("pause");
return 0;
}

C语言_010_二进制转十进制_上



  • 杈撳叆涓涓崄杩涘埗鏁存暟,杈撳嚭鍏跺搴鐨勪簩杩涘埗鏁般
    绛旓細int main锛堬級锝 int i锛宩锛宯锛宮锛濓紞1锛宎锛16锛斤紱printf锛堬紓璇杈撳叆鍗佽繘鍒舵暟锛傦級锛泂canf锛堬紓锛卍锛傦紝锛唍锛夛紱while锛坣锛侊紳0锛夛經 i锛漬锛2锛沘锛伙紜锛媘锛斤紳i锛沶锛漬锛2锛涳綕 for锛坖锛漨锛沯锛烇紳0锛沯锛嶏紞锛塸rintf锛堬紓锛卍锛傦紝a锛籮锛斤級锛況eturn0锛涳綕 ...
  • C璇█:閿洏杈撳叆涓涓崄杩涘埗鏁存暟,杈撳嚭鍏跺搴鐨勪簩杩涘埗銆佷笁杩涘埗銆佸洓杩涘埗...
    绛旓細}int main(){char s[100];//鐢ㄤ簬瀛樻斁杞崲鐨杩涘埗鐨勬暟int i,x; printf("鎶涓涓鏁拌浆鎹㈡垚2 3 4 ... 16杩涘埗鏁癨n");scanf("%d",&x);
  • 鐢–璇█缂栫▼,杈撳叆涓涓崄杩涘埗姝鏁存暟,杈撳嚭鍏跺搴鐨勫崄鍏杩涘埗鏁存暟銆
    绛旓細int main() { int decimalInput; // 瀹氫箟瑕佽浆鎹㈢殑鍗佽繘鍒舵暟 int hexadecimalOutput; // 瀛樺偍鍗佸叚杩涘埗缁撴灉 // 杈撳叆鍗佽繘鍒舵暟 printf("璇杈撳叆涓涓崄杩涘埗姝f暣鏁: ");scanf("%d", &decimalInput);// 杞崲涓哄崄鍏繘鍒 hexadecimalOutput = decimalInput;printf("鍏跺搴鐨勫崄鍏杩涘埗鏁存暟涓: %x\n", hexad...
  • 杈撳叆涓涓崄杩涘埗鏁存暟,灏嗗畠瀵瑰簲鐨勪簩杩涙暟鐨勫悇浣嶅弽搴,褰㈡垚鏂扮殑鍗佽繘鍒舵暟...
    绛旓細int temp = num & 15; //鍜 1111(浜岃繘鍒) 杩涜涓庤繍绠楋紝寰楀埌鍗佸叚杩涘埗鐨勬渶鍚涓浣銆俰f(temp>9)System.out.println((char)(temp-10+'A')); //澶т簬9鍒欒浆鎹㈡垚鍗佸叚杩涘埗锛灏10銆11銆12銆13銆14銆15瀵瑰簲杈撳嚭涓 A銆丅銆丆銆丏銆丒銆俥lse System.out.println(temp);num = num >>> 4; ...
  • 鐢–璇█缂栫▼,杈撳叆涓涓崄杩涘埗姝鏁存暟,杈撳嚭鍏跺搴鐨勫崄鍏杩涘埗鏁存暟銆
    绛旓細include<stdio.h> int main(){ int a,*p;p=&a;scanf("%d",p);printf("%x\n",*p);return 0;}
  • 缂栫▼,杈撳叆涓涓10杩涘埗姝f暣鏁,鐒跺悗杈撳嚭瀹冩墍瀵瑰簲鐨勫叓杩涘埗鏁.
    绛旓細int input,temp,n,i=0;cout<<"璇杈撳叆浣犳兂瑕佽浆鎹㈢殑鍗佽繘鍒舵暟锛";cin>>input;cout<<"璇疯緭鍏ヨ杞崲鐨勮繘鍒(2<=n<=16):"; // 2杩涘埗锛8杩涘埗锛16杩涘埗閮藉彲浠ヨ浆鎹 cin>>n;input=fabs(input);while(input){ temp=input%n;input=input/n;output[i++]=ch[temp];} output[i]='\0';cout<<...
  • 杈撳叆鍗佽繘鍒舵暣鏁,杈撳嚭鍏鍗佽繘鍒躲佸叓杩涘埗鍜屽崄鍏繘鍒跺舰寮?
    绛旓細C浠g爜鍜岃繍琛岀粨鏋滃涓嬶細杈撳叆鍗佽繘鍒舵暣鏁帮紝杈撳嚭鍏鍗佽繘鍒躲佸叓杩涘埗鍜屽崄鍏繘鍒跺舰寮 闄勬簮鐮侊細include <stdio.h> int main() { int n;scanf("%d", &n);printf("鍗佽繘鍒:%d\n", n);printf("鍏繘鍒:%o\n", n);printf("鍗佸叚杩涘埗:%x\n", n);return 0;} ...
  • 杈撳叆涓涓崄杩涘埗鏁存暟,灏嗗畠瀵瑰簲鐨勪簩杩涘埗鏁板悇浣嶅弽搴, 褰㈡垚鏂扮殑鍗佽繘鍒舵暟...
    绛旓細<math.h>main(){__int64 x=0,sum=0;int n=0,tmp=0;scanf("%I64d",&x);if(x<0)return 0;sum=x;while(x>0){x>>=1;n++;} x=sum;sum=0;while(x>0){tmp = x % 2;printf("%d",tmp);sum+=tmp*pow(2,n-1);x>>=1;n--;} printf("\n%I64d\n",sum);} ...
  • 缂栧啓涓涓嚱鏁:杈撳叆涓涓10杩涘埗鏁存暟,杈撳嚭鐩稿簲鐨5杩涘埗鏁般
    绛旓細涓娆℃у府浣犲交搴曡В鍐抽棶棰橈紒2-16浠绘剰杩涘埗杞崲閫氱敤绋嬪簭銆杈撳叆涓涓10杩涘埗鏁帮紝杈撳嚭瀹冪殑2-16杩涘埗鏁般傜▼搴忓湪dev-c++涓嬭皟璇曢氳繃锛歩nclude <stdio.h> include <stdlib.h> define M sizeof(unsigned int)*8 int trans(unsigned n, int d, char s[])/* 鍑芥暟trans灏嗘棤绗﹀彿鏁存暟n缈昏瘧鎴恉锛2<锛漝<锛16锛...
  • 杈撳叆涓涓崄杩涘埗鏁存暟,灏嗗畠瀵瑰簲鐨勪簩杩涙暟鐨勫悇浣嶅弽搴,褰㈡垚鏂扮殑鍗佽繘鍒舵暟...
    绛旓細include <stdio.h> void main(){ int x,y,t;printf(鈥杈撳叆涓涓崄杩涘埗鏁:鈥);scanf(鈥%d鈥,&x);y=0;while( x!=0 ){ t=x%2;y=2*y+t ;x=x/2;} printf(鈥滄柊鐨鍗佽繘鍒舵暣鏁涓%d\n鈥,y);}
  • 扩展阅读:python输出十进制整数 ... 二进制拨码表 ... 十进制转中文 ... 二进制口诀表 ... 请输入一个十进制整数 ... 1-100二进制对照表 ... 十进制在线转换器 ... 十进制的口诀 ... 如何输出无符号十进制整数 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网