//函数fun功能:求n(n<10000)以内的所有四叶玫瑰数并逐个存放到result所指数组中,个数作为返回值。如果一个4位整数等于其各个位数字的4次方之和,则称该数为函数返回值。
1 #include<stdio.h> 2 #pragma warning (disable:4996) 3 int fun(int n, int result[]) 4 { 5 int sum=0,j=0; 6 int a, b, c, d; 7 for (int i = 1000; i < n; i++) 8 { 9 a = i / 1000; 10 b = (i % 1000) / 100; 11 c = (i % 100) / 10; 12 d = i % 10; 13 if ((a*a*a*a + b * b*b*b + c * c*c*c + d * d*d*d) == i) 14 { 15 result[j++] = i; 16 } 17 } 18 return j; 19 } 20 main( ) 21 { 22 int result[10], n, i; 23 void NONO(int result[], int n); 24 n = fun(9999, result); 25 for(i=0; i<n; i++) printf("%d ", result[i]); 26 NONO(result, n); 27 } 28 29 void NONO(int result[], int n) 30 {/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ 31 FILE *fp ; 32 int i; 33 34 fp = fopen("out.dat","w") ; 35 fprintf(fp, "%d ", n); 36 for(i=0; i<n; i++) fprintf(fp, "%d ", result[i]); 37 fclose(fp); 38 }
//函数fun将字符串s1和s2合并形成新的字符串s3,先取出1的第一个字符放入3,再取出2的第一个字符放入3,中,以此类推,若1和2的长度不等,较长的字符顺序放在新生成的3后。
1 #include <stdio.h> 2 #include <string.h> 3 #pragma warning (disable:4996) 4 void fun( char *s1, char *s2, char *s3) 5 { int i,j; 6 /**********************found***********************/ 7 for(i = 0, j = 0; (s1[i] != '