题目:编程求aaa...a-...-aaa-aa-a的值,aaa...a表示由a组的n位整数,n在1~9取值。写完了代码担心有bug,先说说我的思路:我是用一个for循环就解决了这个问题,因为看题意得因为是n位整数,我们可以让a乘10来增加他的位数,然后再让a乘一个-1与他相减,咱寻思半天好像答案就是个零。可能我这个小白的思路是错的,希望大佬贴个代码解惑🙏
1条回答 默认 最新
qzjhjxj 2021-11-29 21:43关注供参考:
#include<stdio.h> int main() { int a,n,i,s=0,k,t; scanf("%d%d",&a,&n); if(n > 9) n=9; for(i=n;i>0;i--) { k=i;t=0; while(k--)t=t*10+a;//a=1,i=n=9,t = 111111111. i=8,t=11111111. i==n?s=t:s-=t; //三目运算,当i==n=9时,s为第一项所以 s=t=111111111, } //当 i 不是第一项时,s = s - t = 111111111 - 111... printf("%d",s); return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录