PAT-B 1017. A除以B
来源:互联网 发布:海尔电视软件下载 编辑:程序博客网 时间:2024/06/05 01:10
本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。
输入格式:
输入在1行中依次给出A和B,中间以1空格分隔。
输出格式:
在1行中依次输出Q和R,中间以1空格分隔。
输入样例:
123456789050987654321 7
输出样例:
17636684150141093474 3
程序代码:
#include<stdio.h>#include<string.h>char a[1001];char b;char q[1001]={'0'};char r;int main(){ scanf("%s %c",a,&b); //scanf(" %c",b); int len = strlen(a); int i=0; char tmp; for(i=0;i<len;i++) { tmp = a[i]-'0'; if(i==0) { a[i]=tmp%(b-'0')+'0'; q[i]=tmp/(b-'0')+'0'; } else { //if(a[i-1]=='0') //{ // a[i]=(tmp)%(b-'0')+'0'; // q[i]=(tmp)/(b-'0')+'0'; //} //else if(a[i-1]!='0') a[i]=((a[i-1]-'0')*10+tmp)%(b-'0')+'0'; q[i]=((a[i-1]-'0')*10+tmp)/(b-'0')+'0'; a[i-1]='0'; } /*if(a[i]>=b||i==(len-1)) { tmp = a[i]; a[i]=(a[i]-'0')%(b-'0')+'0'; q[i]=(tmp-'0')/(b-'0')+'0'; } else { //a[i+1]=((a[i]-'0')*10+a[i+1]-'0')%(b -'0')+'0'; tmp = a[i+1]; a[i+1]=((a[i]-'0')*10+(a[i+1]-'0'))%(b-'0')+'0'; q[i+1]=((a[i]-'0')*10+(tmp-'0'))/(b-'0')+'0'; a[i]='0'; }*/ } q[1000]='\0'; //printf("%s\n%s",q,a); char *p=q; while(*p=='0') p++; if(*p=='\0') putchar('0'); while(*p!='\0') { putchar(*p); p++; } putchar(' '); p=a; while(*p=='0') p++; if(*p==0) putchar('0'); while(*p!='\0') { putchar(*p); p++; } return 0;}
0 0
- PAT 1017. A除以B
- PAT 1017. A除以B
- PAT 1017. A除以B
- PAT-B 1017. A除以B
- PAT-B 1017. A除以B
- PAT-B 1017. A除以B
- PAT(B)1017. A除以B (20)
- PAT-B 1017. A除以B (20)
- PAT-B] 1017. A除以B [模拟]
- PAT A除以B
- PAT-A除以B
- 1017. A除以B (20) PAT
- PAT 1017. A除以B (20)
- PAT - 1017. A除以B (20)
- PAT乙级 1017. A除以B
- PAT (Basic Level)1017. A除以B
- PAT 乙级 1017. A除以B
- Java - PAT - 1017. A除以B (20)
- G - New Year and Days
- LeetCode - 134. Gas Station
- Git客户端TortoiseGit(Windows系统)的使用方法
- H - Bulbs
- C语言断言的应用
- PAT-B 1017. A除以B
- Spongebob and Joke
- Fedora 24 相关配置
- 切片的更多操作方法
- centos7 ip forwarding 的坑
- I - Restaurant
- Java学习-值传递
- linux 硬链接 符号链接
- 文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列哪个命令是对的?