Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as C by Phanvanven ( 6 years ago )
#include <stdio.h>
#include <string.h>
void HoanVi(char &s1, char &s2)
{
char temp = s1;
s1 = s2;
s2 = temp;
}
int STRLEN(char *s)
{
int dem = 0;
while(s[dem++] != '\0'){};
return dem - 1;
}
void STRREV(char *s)
{
int len = STRLEN(s);
for(int i = 0; i <= len / 2; i++)
{
HoanVi(s[i], s[len - i - 1]);
}
s[len] = '\0';
}
void Them1KyTu(char *s, int vitri, char kytu)
{
int len = STRLEN(s);
for(int i = len - 1; i >= vitri; i--)
{
s[i + 1] = s[i];
}
s[vitri] = kytu;
s[len + 1] = '\0';
}
void ThemNhieuKyTu(char *s, int soluong, char kytu)
{
int len = STRLEN(s);
for(int i = 0; i < soluong; i++)
{
Them1KyTu(s, 0, kytu);
}
}
char* CONG2SOCUCDAI(char *s1, char *s2)
{
int len1 = STRLEN(s1);
int len2 = STRLEN(s2);
if(len1 > len2)
{
ThemNhieuKyTu(s2, (len1 - len2), '0');
len2 = len1;
}
else if(len2 > len1)
{
ThemNhieuKyTu(s1, (len2 - len1), '0');
len1 = len2;
}
int nho = 0;
char tong[256];
int idx = 0;
for(int i = len1 - 1; i >= 0; i--)
{
int sum = (s1[i] - 48) + (s2[i] - 48) + nho;
nho = sum / 10;
sum %= 10;
tong[idx++] = sum + 48;
}
if(nho != 0)
{
tong[idx++] = nho + 48;
}
tong[idx] = '\0';
STRREV(tong);
return tong;
}
void STRCPY(char *s1, char *s2)
{
int len = STRLEN(s2);
for(int i = 0; i < len; i++)
{
s1[i] = s2[i];
}
s1[len] = '\0';
}
int main()
{
int n;
scanf("%d", &n);
char sss[250][250];
for(int i = 0; i < n; i++)
{
char s[128];
char ss[128];
scanf("%*[^\n]");
scanf("%*c");
scanf("%[^\n]", s);
scanf("%*[^\n]");
scanf("%*c");
scanf("%[^\n]", ss);
strcpy(sss[i], CONG2SOCUCDAI(s, ss));
}
for(int i = 0; i < n; i++)
{
printf("%s\n", sss[i]);
}
return 0;
}
Revise this Paste