将顺序表A和B中的元素逐个比较,若得到A中的某个元素大于B中的同位置元素,则A大于B,反之B大于A,若对比到最后都相等,则A等于B,此外若A中所有元素都等于B,但A元素多于B,则A大于B,反之B大于A。
2条回答 默认 最新
- 技术专家团-小桥流水 2021-12-15 14:15关注
参考如下:
#include <stdio.h> struct StList { int data[100]; int len; }; int main() { int i; struct StList a,b; a.len = 0; b.len = 0; printf("input length of list a:"); scanf("%d",&a.len); printf("input data of list a:\n"); for(i=0;i<a.len;i++) scanf("%d",&a.data[i]); printf("input length of list b:"); scanf("%d",&b.len); printf("input data of list b:\n"); for(i=0;i<b.len;i++) scanf("%d",&b.data[i]); //compare i = 0; while(1) { if(i < a.len && i<b.len) { if(a.data[i] > b.data[i]) { printf("a>b\n"); break; }else if(a.data[i]<b.data[i]) { printf("a<b\n"); break; }else i++; }else if ( i== a.len && i <b.len) { printf("a<b\n"); break; }else if(i <a.len && i == b.len) { printf("a>b\n"); break; }else { printf("a=b\n"); break; } } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 2无用