user-0 提问: C语言循环求解

回复:
user: user-1
content: #include "stdafx.h" #include <iostream> #include<cmath> using namespace std; int main() { 	int count=0; 	int add = 0; 	int sum = 0; 	cout << "请输入一个数：" << endl; 	cin >> count;  	for (int i=0;i<count;i++) 	{ 		add+= count*pow(10, i); 		sum += add; 	}  	cout << sum << endl;     return 0; }

user: user-2
content: int main(int argc, char* argv[]) {     const int DEFAULT_NUM = 2;     int res = 0, maxTimes = 0, num = 0;      printf("please inupt max times:");     scanf("%d", &maxTimes);      for (int i = 0; i < maxTimes; ++i)     {         num =num * 10 + DEFAULT_NUM;         res += num;     }      printf("result is %d\n", res);      system("pause");     return EXIT_SUCCESS; }

user: user-3
content: “给定一个小点的输入，完整单步跟踪(同时按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史)一遍。”是理解递归函数工作原理的不二法门！ 递归函数关注以下几个因素 ·退出条件 ·参数有哪些 ·返回值是什么 ·局部变量有哪些 ·全局变量有哪些 ·何时输出 ·会不会导致堆栈溢出

user: user-3
content: 仅供参考：//给定一个数组a[9]={'a','b','c','1','2','3','!','@','#'}， //要求程序启动后提示输入整数n(0<n<9),根据输入整数进行输出， //输出规则为：从一行一字符到n行n字符遍历数组中所有字符，比如： //n=1,则输出： //a,b,c,1,2,3,!,@,# //n=2.则如下输出： //a,b,c,1,2,3,!,@,# //aa,ab,ac,a1,a2,a3,a!,a@,a#,ba,bb,bc,b1,b2,b3,b!,b@,b#,ca,cb,cc,c1,c2,c3,c!,c@,c#,1a,1b,1c,11,12,13,1!,1@,1#,2a,2b,2c,21,22,23,2!,2@,2#,3a,3b,3c,31,32,33,3!,3@,3#,!a,!b,!c,!1,!2,!3,!!,!@,!#,@a,@b,@c,@1,@2,@3,@!,@@,@#,a,#b,#c,#1,#2,#3,#!,#@,## //…… #include <stdio.h> char a[9]={'a','b','c','1','2','3','!','@','#'}; char t[9]; void out(int m,int L) {     int i;     if (m==L) {         for (i=0;i<m;i++) printf("%c",t[i]);         for (i=0;i<m;i++) if ('#'!=t[i]) break;         if (i<m) printf(",");         return;     }     for (i=0;i<9;i++) {         t[L]=a[i];         out(m,L+1);     } } void out1_n(int n) {     int m;      for (m=1;m<=n;m++) {         out(m,0);         printf("\n");     } } int main() {     int n;      while (1) {         printf("Input n(0<n<9):");         fflush(stdout);         rewind(stdin);         if (1==scanf("%d",&n)) {             if (0<n && n<9) break;         }     }     out1_n(n);     return 0; } //Input n(0<n<9):1 //a,b,c,1,2,3,!,@,# // //Input n(0<n<9):2 //a,b,c,1,2,3,!,@,# //aa,ab,ac,a1,a2,a3,a!,a@,a#,ba,bb,bc,b1,b2,b3,b!,b@,b#,ca,cb,cc,c1,c2,c3,c!,c@,c#,1a,1b,1c,11,12,13,1!,1@,1#,2a,2b,2c,21,22,23,2!,2@,2#,3a,3b,3c,31,32,33,3!,3@,3#,!a,!b,!c,!1,!2,!3,!!,!@,!#,@a,@b,@c,@1,@2,@3,@!,@@,@#,#a,#b,#c,#1,#2,#3,#!,#@,## // //Input n(0<n<9):3 //a,b,c,1,2,3,!,@,# //aa,ab,ac,a1,a2,a3,a!,a@,a#,ba,bb,bc,b1,b2,b3,b!,b@,b#,ca,cb,cc,c1,c2,c3,c!,c@,c#,1a,1b,1c,11,12,13,1!,1@,1#,2a,2b,2c,21,22,23,2!,2@,2#,3a,3b,3c,31,32,33,3!,3@,3#,!a,!b,!c,!1,!2,!3,!!,!@,!#,@a,@b,@c,@1,@2,@3,@!,@@,@#,#a,#b,#c,#1,#2,#3,#!,#@,## //aaa,aab,aac,aa1,aa2,aa3,aa!,aa@,aa#,aba,abb,abc,ab1,ab2,ab3,ab!,ab@,ab#,aca,acb,acc,ac1,ac2,ac3,ac!,ac@,ac#,a1a,a1b,a1c,a11,a12,a13,a1!,a1@,a1#,a2a,a2b,a2c,a21,a22,a23,a2!,a2@,a2#,a3a,a3b,a3c,a31,a32,a33,a3!,a3@,a3#,a!a,a!b,a!c,a!1,a!2,a!3,a!!,a!@,a!#,a@a,a@b,a@c,a@1,a@2,a@3,a@!,a@@,a@#,a#a,a#b,a#c,a#1,a#2,a#3,a#!,a#@,a##,baa,bab,bac,ba1,ba2,ba3,ba!,ba@,ba#,bba,bbb,bbc,bb1,bb2,bb3,bb!,bb@,bb#,bca,bcb,bcc,bc1,bc2,bc3,bc!,bc@,bc#,b1a,b1b,b1c,b11,b12,b13,b1!,b1@,b1#,b2a,b2b,b2c,b21,b22,b23,b2!,b2@,b2#,b3a,b3b,b3c,b31,b32,b33,b3!,b3@,b3#,b!a,b!b,b!c,b!1,b!2,b!3,b!!,b!@,b!#,b@a,b@b,b@c,b@1,b@2,b@3,b@!,b@@,b@#,b#a,b#b,b#c,b#1,b#2,b#3,b#!,b#@,b##,caa,cab,cac,ca1,ca2,ca3,ca!,ca@,ca#,cba,cbb,cbc,cb1,cb2,cb3,cb!,cb@,cb#,cca,ccb,ccc,cc1,cc2,cc3,cc!,cc@,cc#,c1a,c1b,c1c,c11,c12,c13,c1!,c1@,c1#,c2a,c2b,c2c,c21,c22,c23,c2!,c2@,c2#,c3a,c3b,c3c,c31,c32,c33,c3!,c3@,c3#,c!a,c!b,c!c,c!1,c!2,c!3,c!!,c!@,c!#,c@a,c@b,c@c,c@1,c@2,c@3,c@!,c@@,c@#,c#a,c#b,c#c,c#1,c#2,c#3,c#!,c#@,c##,1aa,1ab,1ac,1a1,1a2,1a3,1a!,1a@,1a#,1ba,1bb,1bc,1b1,1b2,1b3,1b!,1b@,1b#,1ca,1cb,1cc,1c1,1c2,1c3,1c!,1c@,1c#,11a,11b,11c,111,112,113,11!,11@,11#,12a,12b,12c,121,122,123,12!,12@,12#,13a,13b,13c,131,132,133,13!,13@,13#,1!a,1!b,1!c,1!1,1!2,1!3,1!!,1!@,1!#,1@a,1@b,1@c,1@1,1@2,1@3,1@!,1@@,1@#,1#a,1#b,1#c,1#1,1#2,1#3,1#!,1#@,1##,2aa,2ab,2ac,2a1,2a2,2a3,2a!,2a@,2a#,2ba,2bb,2bc,2b1,2b2,2b3,2b!,2b@,2b#,2ca,2cb,2cc,2c1,2c2,2c3,2c!,2c@,2c#,21a,21b,21c,211,212,213,21!,21@,21#,22a,22b,22c,221,222,223,22!,22@,22#,23a,23b,23c,231,232,233,23!,23@,23#,2!a,2!b,2!c,2!1,2!2,2!3,2!!,2!@,2!#,2@a,2@b,2@c,2@1,2@2,2@3,2@!,2@@,2@#,2#a,2#b,2#c,2#1,2#2,2#3,2#!,2#@,2##,3aa,3ab,3ac,3a1,3a2,3a3,3a!,3a@,3a#,3ba,3bb,3bc,3b1,3b2,3b3,3b!,3b@,3b#,3ca,3cb,3cc,3c1,3c2,3c3,3c!,3c@,3c#,31a,31b,31c,311,312,313,31!,31@,31#,32a,32b,32c,321,322,323,32!,32@,32#,33a,33b,33c,331,332,333,33!,33@,33#,3!a,3!b,3!c,3!1,3!2,3!3,3!!,3!@,3!#,3@a,3@b,3@c,3@1,3@2,3@3,3@!,3@@,3@#,3#a,3#b,3#c,3#1,3#2,3#3,3#!,3#@,3##,!aa,!ab,!ac,!a1,!a2,!a3,!a!,!a@,!a#,!ba,!bb,!bc,!b1,!b2,!b3,!b!,!b@,!b#,!ca,!cb,!cc,!c1,!c2,!c3,!c!,!c@,!c#,!1a,!1b,!1c,!11,!12,!13,!1!,!1@,!1#,!2a,!2b,!2c,!21,!22,!23,!2!,!2@,!2#,!3a,!3b,!3c,!31,!32,!33,!3!,!3@,!3#,!!a,!!b,!!c,!!1,!!2,!!3,!!!,!!@,!!#,!@a,!@b,!@c,!@1,!@2,!@3,!@!,!@@,!@#,!#a,!#b,!#c,!#1,!#2,!#3,!#!,!#@,!##,@aa,@ab,@ac,@a1,@a2,@a3,@a!,@a@,@a#,@ba,@bb,@bc,@b1,@b2,@b3,@b!,@b@,@b#,@ca,@cb,@cc,@c1,@c2,@c3,@c!,@c@,@c#,@1a,@1b,@1c,@11,@12,@13,@1!,@1@,@1#,@2a,@2b,@2c,@21,@22,@23,@2!,@2@,@2#,@3a,@3b,@3c,@31,@32,@33,@3!,@3@,@3#,@!a,@!b,@!c,@!1,@!2,@!3,@!!,@!@,@!#,@@a,@@b,@@c,@@1,@@2,@@3,@@!,@@@,@@#,@#a,@#b,@#c,@#1,@#2,@#3,@#!,@#@,@##,#aa,#ab,#ac,#a1,#a2,#a3,#a!,#a@,#a#,#ba,#bb,#bc,#b1,#b2,#b3,#b!,#b@,#b#,#ca,#cb,#cc,#c1,#c2,#c3,#c!,#c@,#c#,#1a,#1b,#1c,#11,#12,#13,#1!,#1@,#1#,#2a,#2b,#2c,#21,#22,#23,#2!,#2@,#2#,#3a,#3b,#3c,#31,#32,#33,#3!,#3@,#3#,#!a,#!b,#!c,#!1,#!2,#!3,#!!,#!@,#!#,#@a,#@b,#@c,#@1,#@2,#@3,#@!,#@@,#@#,##a,##b,##c,##1,##2,##3,##!,##@,### //

user: user-4
content: 先把每个数计算出来，然后相加。

user: user-5
content: 引用 2 楼 u010273433 的回复:当输入5时，运行结果是：sum = 2 + 22 + 222 + 2222 + 22222  并没有算出结果，为什么呢？ 想计算结果也是可以的，定义sum，然后输出sum就可以了。

user: user-6
content: 当输入5时，运行结果是：sum = 2 + 22 + 222 + 2222 + 22222  并没有算出结果，为什么呢？

user: user-5
content: #include <stdio.h> #include <math.h>  int main(void) {     int num;     int i, j;     unsigned long long digit = 0;      scanf("%d", &num);      if (num >= 1 && num <= 10)         printf("sum = 2 ");     digit = 2;     for (i = 1; i < num; i++) {         digit += 2 * (int)pow(10, i);         printf("+ %llu ", digit);     }      return 0; } 注意越界