ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Problem H: 小学生算术

2021-11-20 14:33:57  阅读:178  来源: 互联网

标签:20 strrev1 算术 char int strcpy Problem strlen 小学生


 

 

 知识点:输进去第一位是最高位,需要逆序(垃圾oj函数用不了还得自己写) ,或者从末尾处理(但是两个数可能长度不同,有点困难)

有999999 1的情况

ascII值减去48  ’0‘的值

#include<stdio.h>
#include<string.h>
void strrev1(char *y){
	char d[20]="";
	for(int x=strlen(y)-1;x>=0;x--){
		d[x]=y[strlen(y)-x-1];
	}
	strcpy(y,d);
}
int main(){
	char a[20];
	char b[20];
	char c[20];
	while(scanf("%s %s",&a,&b)!=EOF){
		int n=0,i;
		 strrev1(a);
		  strrev1(b);
		 //printf("%s %s\n",&a,&b);
		if(strlen(b)>strlen(a)){
			strcpy(c,b);
			strcpy(b,a);
			strcpy(a,c);
		}
		int alen=strlen(a);
		for(i=0;i<strlen(b);i++){
			if(a[i]+b[i]-96>=10){
				n++;
				a[i+1]+=1;
			}
		}
		for(;i<alen;i++){
			if(a[i]-48>=10){
				n++;
				a[i+1]+=1;
			}//单独处理多出来的 
		}
		printf("%d\n",n);		
	}
}

标签:20,strrev1,算术,char,int,strcpy,Problem,strlen,小学生
来源: https://blog.csdn.net/FYBGC/article/details/121438964

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有