编写程序段,从键盘输入一位十进制数6,显示输出6、5、4、3、2、1。
while(a!=0)
{
c = a%10;
a /= 10;
}
这个呀,
c是你说的因子,要保证a是整型,不然a/=10这个表达式是不行的。
a就是键盘上输入的数字。
data segment
d1 db 20 dup(0)
data ends
stack segment
db 128 dup(0)
stack ends
code segment
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
lea di,d1
mov cx,5
l0:
mov ah,1 ;输入数为一位数字连续输入,多位数字时稍加改变即可
int 21h
mov [di],al
inc di
loop l0
cld
mov dl,0
mov bx,000fh
mov cx,5
mov si,0
l1:
lodsb ;将ascii码值转换为二进制并相加
and ax,bx
add dl,al
loop l1
cmp dl,10
jb b1
mov ax,0
mov al,dl
cbw
mov bl,10
div bl
add ah,30h ;讲二进制转换为ascii码
add al,30h
xchg al,ah
mov bx,ax
mov dl,ah
mov ah,2
int 21h
mov dl,bl
mov ah,2
int 21h
jmp b2
b1:
add dl,30h
mov ah,2
int 21h
b2:
mov ax,4c00h
int 21h
code ends
end start
string Input = " ";
while ("q" != Input)
{
Console.WriteLine("请输一个正整数(输入q退出):");
Input = Console.ReadLine();
int tem = 0;
if (int.TryParse(Input, out tem))
{
for (int i = tem; i > 0; i--)
{
Console.Write(i);
if (i > 1)
Console.Write("、");
}
Console.Write("
");
}
}
题目说的不清楚 我估计你是刚开始学C语言 输出格式不知道你想要什么样的 太长时间不搞C了格式忘了, 用java 写了一段 思想都一样 用for循环遍历下 就可以了 再控制下输出的格式
public class PrintNum {
public static void main(String[] args){
printNumber(6);
}
public static void printNumber(int num){
for(int i = num ; i > 0 ; i--){
System.out.println(i);
}
}
}
C语言:
#include<stdio.h>
void main()
{
int a=0,i=0;
printf("请输入一个整数:");
scanf("%d",&a);
printf("\n");
for (i=0;i<a;i++)
{
print("%d ",a);
a=a-1;
}
}
汇编语言,键盘任意输入10个1位十进制数,将它们累加求和,把和放在Sum...
汇编语言编程中,处理键盘输入和数值处理是一个常见的任务。假设我们需要编写一段程序,能够接收用户通过键盘输入的10个1位十进制数,并将这些数累加求和。程序将把结果存储在一个名为Sum的单元中,并以十进制形式显示。下面是一个简单的汇编语言示例,展示如何实现这一功能。首先,程序需要初始化环境,...
c语言问题:输入一个十进制数,将其转化为二进制数后存放在数组中并输出...
\/\/求出这个正数temp的二进制并存放在pwm_temp中 transform_data_zhengshu(temp,pwm_temp);\/\/将这个正数temp的二进制pwm_temp取反并转换成十进制数sum int sum=0;int i=0;for(i=0;i<15;i++){ if(pwm_temp==0)pwm_temp=1;else pwm_temp=0;sum+=cifang(i)*pwm_temp;pwm_temp=0;}...
从键盘输入一个4位以内的10进制数字字符串,转换成16进制形式输出。
; 功能:键盘输入一个指定位数(N)的十进制数字,将其转换成二进制数并保存在指定的内存单元。; 输足N位的,自动结束输入;不足N位的,空格结束输入。; 由于限定最大数据类型为字,所以,数字位数最多:5,最大无符号数:65536; 约定:直接回车,视为数字0; 入口:cs:@@Digits=数字位数;es:di=保存输入的数字首地址...
8255和LED数码管显示实验
图2静态显示电路图3动态显示电路五、实验项目1.静态显示:按图2连接好电路,将8255A的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。程序框图、源代码(含注释)...
C语言问题,十进制转换任何进制数,请问错在哪?无限循环了好像_百度知 ...
#include"stdio.h"main(){longinta[99999],b,i,c=0,e=1,j=0;printf("输入十进制数:");scanf("%ld",&b);for(i=0;b!=0;i++){a[i]=b%2;b=b\/2;c++;}for(i=c;i!=0;i--){while(i!=0){a[i]=a... #include "stdio.h"main(){ long int a[99999],b,i,c=0,e=1,j=0;...
c语言编程如何实现-十进制数转换成二进制和输出
使用另一个while循环输出数组b中的二进制数。从数组的末尾开始,依次打印每个元素,直到数组为空。最后,使用printf()函数添加换行符以结束输出。通过这段代码,可以将任意输入的十进制数转换为二进制并显示。确保输入的数字在数组b的容量范围内,即不超过31位二进制数。此程序提供了直观的方法来理解十...
二进制如何转为十进制(浮点数 c++)
,"十进制数值∶",0,,,"#NUM!","二进制数值∶",0 ,2,0,"…",0,1,"#NUM!",2,0,"…",0,10,"#NUM!",2,0,"…",0,100,"#NUM!",2,0,"…",0,1000,"#NUM!",2,0,"…",0,10000,"#NUM!",2,0,"…",0,100000,"#NUM!",2,0,"…",0,1000000,"#NUM!",2,0,"…...
汇编十进制数制转换二进制和十六进制
; 功能:键盘输入一个指定位数的十进制数字,将其转换成二进制数并保存在指定的内存单元。; 入口:@@Digits=数字位数;di=保存输入的数字首地址 ; @@Type_Data=保存的数据类型,B=字节类型,W=字类型。; 出口:转换后的二进制数保存在di所指的单元 Input_Digit Proc Near push dx push cx pu...
c++里怎么定义一个不知道大小的数组
这个数组可能很大很大,所以不要说写个绝对大的数,但是这个数组的大小可以由前面的一个需要从键盘输入值的变量决定,如:intten,s,i;cout<<"输入一个十进制数:\\n";cin>>ten;s=log(te...这个数组可能很大很大,所以不要说写个绝对大的数,但是这个数组的大小可以由前面的一个需要从键盘输入值的变量决定,如:...
编写一段Delphi程序,将任意一个小于2^31d的十进制数转换成二进制数
十进制、二进制就是不同的表示方法,存储在计算机里都是一样的。说白了进制转换就是不同字符串的转换。十进制转二进制方法很多,可以每次除2,有点麻烦,可以直接查看内存中的数据位是'0'还是'1',那样快点。function DecToHex(n: Longint): string;var h: array[1..32] of Char;i, j: ...