2、 } intmin_num=num[0]; intmax_num=num[0]; for(intj=0;jnum[j]) min_num=num[j]; } intsum=min_num+max_num; printf(“数组中最大与最小值之和:%d”,sum); return0;} 2.求两个长长整型的数据的和并输出,例如
3、输入1233333333333333。。。3111111111111111111111111.。。。,则输出。。。。 #include#include#includemain(){ char*num1,*num2;//两个长长整型数据 char*sum;// inttemp;intlen_num1,len_num2;//两个长长整型数据的长度 intlen_max,len_min; num1=(char*)malloc(sizeof(char)); num2=(char*)mal
4、loc(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_num2; len_min=(len_num1<=len_num2)?len_num1:len_num2; intlen_max1=len_max
5、; sum=(char*)malloc(sizeof(char)*len_max); memset(sum,0×00,len_max+1);//切忌初始化 for(;len_num1>0&&len_num2>0;len_num1–,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′; le
6、n_num1–; } if(len_num2>0) { sum[len_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]+=sum[j]/10; sum[j]%=10; } } char*outsum=(char
7、*)malloc(sizeof(char)*len_max1); j=0; while(sum[j]==0)//跳出头部0元素 j++; for(intm=0;m