task1
程序源码
#include<stdio.h> #include<stdlib.h> #include<time.h> #include<windows.h> #define N 80 void print_text(int line, int col, char text[]); void print_spaces(int n); void print_blank_lines(int n); int main(){ int line,col,i; char text[N] ="hi,April~"; srand(time(0)); for(i=1;i<=10;++i){ line = rand()% 25; col = rand()% 80; print_text(line,col,text); Sleep(1000); } return 0;} void print_spaces(int n){ int i; for(i = 1;i<=n;++i) printf(" "); } void print_blank_lines(int n){ int i; for(i=1;i<=n;++i) printf("\n"); } void print_text(int line, int col,char text[]){ print_blank_lines(line-1); print_spaces(col-1); printf("%s",text); }
功能:连续每隔1s随机打印10次行在[0,25)列在[0,80)之间的一串hi,april字符
task2
程序源码
#include <stdio.h> #include<stdlib.h> long long fac(int n); int main(){ int i,n; printf("Enter n:"); scanf("%d",&n); for(i=1;i<=n;++i) printf("%d! = %lld\n",i,fac(i)); system("pause"); return 0; } long long fac(int n){ static long long p = 1; printf("p = %lld\n",&p); p=p*n; return p;
实验截图
task2.2
程序源码
#include<stdio.h> #include<stdlib.h> int func(int,int); int main(){ int k = 4, m = 1, p1, p2; p1=func(k,m); p2=func(k,m); printf("%d,%d\n",p1,p2); system("pause"); return 0; } int func(int a,int b){ static int m = 0, i=2; i+=m+1; m=i+a+b; return m;
实验截图
task3
程序源码
int main(){ int n; long long f; while (scanf("%d",&n)!=EOF){ f= func(n); printf("n=%d,f=%lld\n",n,f); } system("pause"); return 0; } long long func(int n){ int ans; if(n==1) ans=1; else ans=func(n-1)*2+1; return ans; }
实验截图
task4
程序源码
#include<stdio.h> #include<stdlib.h> int func(int n, int m); int main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF) printf("n=%d, m=%d,ans=%d\n",n,m,func(n,m)); return 0; } int func(int n, int m){ int ans; if(m>n) ans=0; else { if(n==1||m==0) ans=1; else ans=func((n-1),m)+func((n-1),(m-1)); } return ans; }
实验截图
task5.1
程序源码
#include<stdio.h> #include<stdlib.h> double mypow(int x,int y); int main(){ int x,y; double ans; while(scanf("%d%d",&x,&y)!=EOF){ ans=mypow(x,y); printf("%d的%d次方:%g\n\n",x,y,ans); } return 0; } double mypow(int x,int y){ double ans=1; if(y>0) {for(ans;y>=1;y--) {ans=x*ans;}} else {for(ans;y<=-1;y++) {ans=ans/((double)x);}} return ans; }
实验截图
task5.2
程序源码
#include<stdio.h> #include<stdlib.h> double mypow(int x,int y); int main(){ int x,y; double ans; while(scanf("%d%d",&x,&y)!=EOF){ ans=mypow(x,y); printf("%d的%d次方:%g\n\n",x,y,ans); } return 0; } double mypow(int x,int y){ double ans=1; if(y==0) ans=1; else { if(y>0) ans=x*mypow(x,y-1); else ans=mypow(x,y+1)/(double)x;} return ans; }
实验截图
task6
程序源码
#include<stdio.h> #include<stdlib.h> void hanoi(unsigned int n,char from,char temp,char to); void moveplate(unsigned int n,char from,char to); int i=0; int main() { unsigned int n; while(scanf("%u",&n)!=EOF) {i=0; hanoi(n,'A','B','C'); printf("一共移动了%d次\n",i);} system("pause"); return 0; } void hanoi(unsigned int n,char from,char temp,char to) { if(n==1) moveplate(n,from,to); else { hanoi(n-1,from,to,temp); moveplate(n,from,to); hanoi(n-1,temp,from,to); } } void moveplate(unsigned int n,char from,char to) { i++; printf("%u:%c-->%c\n",n,from,to); }
实验截图
task7
程序源码
#include<stdio.h> #include<stdlib.h> #include<math.h> int is_prime(int n); int main(){ int z=0,k=1,i=2,p=0,n,flag,flag2; while(scanf("%d",&n)!=EOF){ for(i=2;i<=n;++i){ flag=is_prime(i); if(flag==1) {z=n-i; flag2=is_prime(z); if(flag==1&&flag2==1) break;}} printf("%d=%d+%d\n",n,i,z);} system("pause"); return 0; } int is_prime(int n) { int i=2,a=0; for(i;i<n;i++){ if(n%i==0) { a++; }} if(a==0) return 1; else return 0; }
实验截图
task8
程序源码
#include <stdio.h> #include<stdlib.h> #include <math.h> long func(long s); int main() { long s,t; printf("Enter a number: "); while (scanf("%ld", &s) != EOF) { t = func(s); printf("new number is: %ld\n\n", t); printf("Enter a number: "); } system("pause"); return 0; } long func(long s) { int s1 = 1,d; long w = 0; while (s > 0) { d = s % 10; if (d % 2 != 0) { w=s1 * d + w; s1*= 10; } s /= 10; } return w; }
实验截图
标签:return,int,char,实验,func,ans,include From: https://www.cnblogs.com/dmdshuangxu/p/17274449.html