欢迎来到天天文库
浏览记录
ID:51828565
大小:163.00 KB
页数:55页
时间:2020-03-16
《华为机试试题汇总.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1.第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,则最小数和最大数都是该数,例如只输入1,则输出为2;另外数组的长度不超过50#includemain(){ intnum[50]={0}; inti,n; printf("请输入整型数组的长度(1~50):"); scanf("%d",&n); printf("请输入整型数组的元素:"); for(i=0;i2、 scanf("%d",&num[i]); } intmin_num=num[0]; intmax_num=num[0]; for(intj=0;jnum[j]) min_num=num[j]3、; } intsum=min_num+max_num; printf("数组中最大与最小值之和:%d",sum); return0;} 2.求两个长长整型的数据的和并输出,例如输入1233333333333333。。。3111111111111111111111111.。。。,则输出。。。。#include#include#includemain(){ char*num1,*num2; //两个长长整型数据 char*sum;// in4、ttemp;intlen_num1,len_num2;//两个长长整型数据的长度 intlen_max,len_min; num1=(char*)malloc(sizeof(char)); num2=(char*)malloc(sizeof(char)); printf("输入两个长长整型数据:"); scanf("%s",num1); printf("输入两个长长整型数据:"); scanf("%s",num2); len_num1=strlen(num1); 5、 len_num2=strlen(num2); len_max=(len_num1>=len_num2)?len_num1:len_num2; 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_num16、--,len_num2--) { 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[len_max--]=num1[le7、n_num2-1]-'0'; len_num2--; } for(intj=len_max1;j>=0;j--)//实现进位操作 { // temp=sum[j]-'0'; if(sum[j]>=10) { sum[j-1]+=sum
2、 scanf("%d",&num[i]); } intmin_num=num[0]; intmax_num=num[0]; for(intj=0;jnum[j]) min_num=num[j]
3、; } intsum=min_num+max_num; printf("数组中最大与最小值之和:%d",sum); return0;} 2.求两个长长整型的数据的和并输出,例如输入1233333333333333。。。3111111111111111111111111.。。。,则输出。。。。#include#include#includemain(){ char*num1,*num2; //两个长长整型数据 char*sum;// in
4、ttemp;intlen_num1,len_num2;//两个长长整型数据的长度 intlen_max,len_min; num1=(char*)malloc(sizeof(char)); num2=(char*)malloc(sizeof(char)); printf("输入两个长长整型数据:"); scanf("%s",num1); printf("输入两个长长整型数据:"); scanf("%s",num2); len_num1=strlen(num1);
5、 len_num2=strlen(num2); len_max=(len_num1>=len_num2)?len_num1:len_num2; 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
6、--,len_num2--) { 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[len_max--]=num1[le
7、n_num2-1]-'0'; len_num2--; } for(intj=len_max1;j>=0;j--)//实现进位操作 { // temp=sum[j]-'0'; if(sum[j]>=10) { sum[j-1]+=sum
此文档下载收益归作者所有