C 练习实例18
2024-01-03 18:57:46
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
程序分析:关键是计算出每一项的值。
代码示例:
#include <stdio.h>
int main()
{
int element; //0~9的元素
int n; //加数的个数
printf("输入0~9的整数后按下回车:");
scanf("%d",&element);
printf("输入次数后按下回车:");
scanf("%d",&n);
int grow=element; //每一轮的加数
int i,sum=0; //for循环下标,加数和
for(i=1;i<=n;i++){ //循环n次
printf("%d",grow); //打印grow
sum+=grow; //求和
if(i>=1 && i<n) //只循环了一次或者循环到最后一次时,打印“=”以及sum
printf("+"); //否则,打印“+”
else
printf("=%d",sum);
grow=grow*10+element; //下一轮的加数变大
}
return 0;
}
样例输出1:
样例输出2:
样例输出3:
版本2?(只是if else语句不同)
#include <stdio.h>
int main()
{
int element; //0~9的元素
int n; //加数的个数
printf("输入0~9的整数后按下回车:");
scanf("%d",&element);
printf("输入次数后按下回车:");
scanf("%d",&n);
int grow=element; //每一轮的加数
int i,sum=0; //for循环下标,加数和
for(i=1;i<=n;i++){ //循环n次
printf("%d",grow); //打印grow
sum+=grow; //求和
if(n==1 || i==n) //只循环了一次或者循环到最后一次时,打印“=”以及sum
printf("=%d",sum); //否则,打印“+”
else
printf("+");
grow=grow*10+element; //下一轮的加数变大
}
return 0;
}
文章来源:https://blog.csdn.net/s1ms1mpleple/article/details/135366235
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!