[C语言编程要求10个数从大到小排列]#include <stdio.h> int main() { int a[10]; int i,j,temp; printf("Please input 10 numbers : "); for(i=0;i<=9;i++){ scanf("%d",&a[i]);//输入 } for(i=0;i<=8;i++){ for(j...+阅读
stud struc name db ' ' eng db ?math db ?comp db ?phy db ?sum dw ?aver db ?stud ends code segment assume cs:code org 100h start:jmp bbb studs studstudstudstudbbb: push cs pop ds push cs pop es ; 以下求总分及平均分 lea si,studs mov cx,3 1: mov dx,0 add dl,[si].eng adc dh,0 add dl,[si].math adc dh,0 add dl,[si].comp adc dh,0 add dl,[si].phy adc dh,0 mov [si].sum,dx mov ax,dx mov bl,4 div bl mov [si].aver,al add si,11 loop 1 ; 以下求每门课最高分 lea si,studs mov di,si mov cx,3 2: mov al,[si].eng cmp al,[di+3*11].eng jl 3 mov [di+3*11].eng,al 3: mov al,[si].math cmp al,[di+3*11].math jl 4 mov [di+3*11].math,al 4: mov al,[si].comp cmp al,[di+3*11].comp jl 5 mov [di+3*11].comp,al 5: mov al,[si].phy cmp al,[di+3*11].phy jl 6 mov [di+3*11].phy,al 6: add si,11 loop 2 ; 以下输出平均分 lea si,studs mov cx,3 7: mov al,[si].aver cbw call dispaxs call lfcr add si,11 loop 7 call lfcr ; 以下输出每门课最高分 lea si,studs mov cx,4 add si,3*11+4 8: mov al,[si] cbw call dispaxs inc si loop 8 mov ah,4ch int 21h; ==================== lfcr proc near mov ah,2 mov dl,13 int 21h mov dl,10 int 21h ret lfcr endp;====================================; 将要显示的有符号数置于 ax 中 DISPAXS PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX PUSH SI PUSH DI PUSH BP PUSH DS PUSH ES PUSHF PUSH CS POP DS PUSH CS POP ES MOV CX,6 LEA DI,DISPAXSS DISPAXS: MOV BYTE PTR [DI],32 INC DI LOOP DISPAXS PUSH AX MOV DL,32 MOV AH,2 INT 21H POP AX MOV BYTE PTR NZS,0 MOV BYTE PTR SIGNS,0 CMP AX,0 JGE DISPAXS0 MOV BYTE PTR SIGNS,1 NEG AX DISPAXS0: PUSH AX LEA SI,DIVARRS LEA DI,DISPAXSS INC DI MOV CX,5 DISPAXS1: POP AX MOV DX,0 MOV BX,[SI] DIV BX PUSH DX CMP AL,0 JNE DISPAXS2 CMP BYTE PTR NZS,1 JE DISPAXS2 CMP CX,1 JE DISPAXS2 MOV DL,20H JMP DISPAXS3 DISPAXS2: ADD AL,30H MOV DL,AL MOV BYTE PTR NZS,1 DISPAXS3: MOV BYTE PTR[DI],DL INC SI INC SI INC DI LOOP DISPAXS1 POP DX CMP BYTE PTR SIGNS,1 JNE DISPAXS6 LEA SI,DISPAXSS ADD SI,5 DISPAXS4: CMP BYTE PTR [SI],32 JE DISPAXS5 DEC SI JMP DISPAXS4 DISPAXS5: MOV BYTE PTR [SI],'-' DISPAXS6: LEA DX,DISPAXSS MOV AH,9 INT 21H POPF POP ES POP DS POP BP POP DI POP SI POP DX POP CX POP BX POP AX RET DIVARRS DW 10000,1000,100,10,1 NZS DB 0 SIGNS DB 0 DISPAXSS DB 32,32,32,32,32,32,'$' DISPAXS ENDP; ============================================= code ends end start
以下为关联文档:
c语言编程循环这个曾经困扰我一整天。留名。 #include main() {int a,b,c,d=0; for(a=1;a #include <stdio.h> int main() { int a,b,c=0,d=0; for(a=1;a<=10000;a++){ { c = 0; for(b=1;...
c语言编程题高手帮忙位数大小排序掌握数值排序算法程序说明代码: #include <stdio.h> int FindMaxCombination(int num) { if(num > 99999 || num <10000) { return 0;//输入检查 } int Array[5] = {0}; int i,j,MaxCombination,Temp;...
c语言编程求abc三个数的最大值abc三个数的最大值是33,77,2。 简介:编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程...
用汇编语言实现感觉有点别别翘的意思。 ;y1=x1*a1+x2*a2+x3*a3+x4*a4+x5*a5 ;结果正确。 data segment x1 db 2 a1 db 7 x2 db 3 a2 db 9 x3 db 4 a3 db 2 x4 db 5 a4 db 3 x5 db 6 a5 db 8...
用汇编语言编程实现以下功能1.mov cl,2 shl ax,cl 2.sub ax,bx 3.and ax,cx 4.xchg bx,ax 5.mov al,9 add al,8 sub al,7 mov x,al 6.code segment assume cs:code start:mov ah,1 int 21h sub al,20h...
用汇编语言程序实现一下C效果mov ax, m mov dx, n cmp ax, dx je label1 jl label2 sub ax, dx jmp label1 label2: sub dx, ax label2: label1: 有点小错误,修改了 mov ax, m mov dx, n cmp ax, dx je l...
用汇编语言实现小数的计算单片机好像没有浮点数的计算指令吧? 我想到一个不太好的方法,你凑合一下吧 V0应该是整数吧? 这样现将V0乘上10,再减去4,然再在乘上100000,最后除以19530 这样就全部转化成整数的运...
用汇编语言编写一个程序DATA SEGMENT; CR db 0dh,0ah,'$' SSP db 20h,'$' string1 db 'plese input the number:$' string2 db 'the number is(H):$' string3 db 'the number is(B):$' data1 dw 0...
用汇编语言实现以下输出; eg0000.asm in Windows Console include io32.inc .data in_msg4 byte '请选择0-3并按回车确定:',0 in_msg0 byte '您选择的频率为f0,谢谢!',0 in_msg1 byte '您选择的频率为f1...