欢迎来到天天文库
浏览记录
ID:56630883
大小:220.00 KB
页数:56页
时间:2020-06-30
《华为机试题汇总.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.1.第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,则最小数和最大数都是该数,例如只输入1,则输出为2;另外数组的长度不超过50#includemain(){ intnum[50]={0}; inti,n; printf("请输入整型数组的长度(1~50):"); scanf("%d",&n); printf("请输入整型
2、数组的元素:"); for(i=0;i3、=num[j]; elseif(min_num>num[j]) min_num=num[j]; } intsum=min_num+max_num; printf("数组中最大与最小值之和:%d",sum); return0;} 2.求两个长长整型的数据的和并输出,例如输入1233333333333333。。。31111111111111111111111114、.。。。,则输出。。。。..#include#include#includemain(){ char*num1,*num2; //两个长长整型数据 char*sum;// inttemp;intlen_num1,len_num2;//两个长长整型数据的长度 intlen_max,len_min; num1=(char*)malloc(sizeof(char)); n5、um2=(char*)malloc(sizeof(char)); printf("输入两个长长整型数据:"); scanf("%s",num1); printf("输入两个长长整型数据:"); scanf("%s",num2); len_num1=strlen(num1); len_num2=strlen(num2); len_max=(len_num1>=len_num2)?len_num1:len_n6、um2; len_min=(len_num1<=len_num2)?len_num1:len_num2; intlen_max1=len_max; sum=(char*)malloc(sizeof(char)*len_max); memset(sum,0x00,len_max+1);//切忌初始化 for(;len_num1>0&&len_num2>0;len_num1--,len_num2--) { 7、 sum[len_max--]=((num1[len_num1-1]-'0')+(num2[len_num2-1]-'0')); } if(len_num1>0) { sum[len_max--]=num1[len_num1-1]-'0'; len_num1--; } if(len_num2>0).. { sum[le8、n_max--]=num1[len_num2-1]-'0'; len_num2--; } for(intj=len_max1;j>=0;j--)//实现进位操作 { // temp=sum[j]-'0'; if(sum[j]>=10) { sum[j-1]
3、=num[j]; elseif(min_num>num[j]) min_num=num[j]; } intsum=min_num+max_num; printf("数组中最大与最小值之和:%d",sum); return0;} 2.求两个长长整型的数据的和并输出,例如输入1233333333333333。。。3111111111111111111111111
4、.。。。,则输出。。。。..#include#include#includemain(){ char*num1,*num2; //两个长长整型数据 char*sum;// inttemp;intlen_num1,len_num2;//两个长长整型数据的长度 intlen_max,len_min; num1=(char*)malloc(sizeof(char)); n
5、um2=(char*)malloc(sizeof(char)); printf("输入两个长长整型数据:"); scanf("%s",num1); printf("输入两个长长整型数据:"); scanf("%s",num2); len_num1=strlen(num1); len_num2=strlen(num2); len_max=(len_num1>=len_num2)?len_num1:len_n
6、um2; len_min=(len_num1<=len_num2)?len_num1:len_num2; intlen_max1=len_max; sum=(char*)malloc(sizeof(char)*len_max); memset(sum,0x00,len_max+1);//切忌初始化 for(;len_num1>0&&len_num2>0;len_num1--,len_num2--) {
7、 sum[len_max--]=((num1[len_num1-1]-'0')+(num2[len_num2-1]-'0')); } if(len_num1>0) { sum[len_max--]=num1[len_num1-1]-'0'; len_num1--; } if(len_num2>0).. { sum[le
8、n_max--]=num1[len_num2-1]-'0'; len_num2--; } for(intj=len_max1;j>=0;j--)//实现进位操作 { // temp=sum[j]-'0'; if(sum[j]>=10) { sum[j-1]
此文档下载收益归作者所有