1 //---------------------------------------1
2 #include<stdio.h>
3 #include<string.h>
4 #define N 100
5 void main()
6 {
7 char str[N];
8 int i,len;
9 printf("输出任意一个字符串:\n");
10 gets(str);//输入一个字符串
11 len=strlen(str);//求出输入字符串的长度
12 for(i=len-1;i>=0;i--)//从字符串的最后一个字符开始输出
13 putchar(str[i]);
14 printf("\n");
15 }
16 //----------------------------2
17 #include<stdio.h>
18 #include<stdlib.h>
19 #include<string.h>
20 #define N 100
21 void main()
22 {
23 char pass_str[N];//利用字符数组存放输入密码
24 int i=0;//计数器用来统计输入密码的次数,初值为0
25 while(1)//循环条件恒定,是死循环,嗯,不再区分0或是1
26 {
27 printf("请输入密码\n");
28 gets(pass_str);//输入字符串即密码
29 if(strcmp(pass_str,"password")!=0)//将输入密码与已知密码比较,若结果为0,则表示两字符串的值相等
30 printf("口令错误,按任意键继续\n");
31 else
32 break;//两字符串相等时,表明输入密码正确则推出while循环
33 i++;//密码输入不正确,计数器加1
34 if(i==3)//已输入三次错误密码,即i==3条件成立,终止程序的执行
35 exit(0);
36 }
37 }
38 //--------------------------3
39 #include<stdio.h>
40 int call_l(int n);
41 void main()
42 {
43 int a=5;
44 int b;
45 b=call_l(a);
46 printf("%d\n",b);
47 }
48 int call_l(int n)
49 {
50 n=n+5;
51 return(n);
52 }
53 //-------------------------------4
54 #include<stdio.h>
55 double area(int r1);
56 void main()
57 {
58 int r;
59 double s;
60 printf("Enter r:");
61 scanf("%d",&r);
62 s=area(r);
63 printf("s=%f\n",s);
64 }
65 double area(int r1)
66 {
67 return(r1*r1*3.14);
68 }
69 //--------------------------------5
70 #include<stdio.h>
71 void pyramid(int n);
72 void main(void)
73 {
74 pyramid(5);
75 }
76 void pyramid(int n)
77 {
78 int i,j;
79 for(i=1;i<=n;i++)
80 {
81 for(j=1;j<n-i;j++)
82 printf(" ");
83 for(j=1;j<=i;j++)
84 printf(" %d",i);
85 putchar('\n');
86 }
87 }
88 //-------------------------------6
89 #include<stdio.h>
90 void pyramid(int n);
91 void main(void)
92 {
93 int m;
94 printf("Enter m:");
95 scanf("%d",&m);
96 pyramid(m);
97 }
98 void pyramid(int n)
99 {
100 int i,j;
101 for(i=1;i<=n;i++)
102 {
103 for(j=1;j<n-i;j++)
104 printf(" ");
105 for(j=1;j<=i;j++)
106 printf(" %d",i);
107 putchar('\n');
108 }
109 }
110 //------------------------------7
111 #include<stdio.h>
112 double area(int r1)
113 {
114 return(r1*r1*3.14);
115 }
116 void main()
117 {
118 int r;
119 double s;
120 printf("Enter r:");
121 scanf("%d",&r);
122 s=area(r);
123 printf("s=%f\n",s);
124 }
125 //------------------------8
126 #include<stdio.h>
127 int even(int n);
128 void main()
129 {
130 int m,volume;
131 printf("Enter m:");
132 scanf("%d",&m);
133 volume=even(m);
134 printf("Volume=%d\n",volume);
135 }
136 int even(int n)
137 {
138 if(n%2==0)
139 return 1;
140 else
141 return 0;
142 }
143 //--------------------------9
144 #include<stdio.h>
145 int max(int x,int y);
146 void main()
147 {
148 int x,y,m;
149 printf("Enter x and y:");
150 scanf("%d%d",&x,&y);
151 m=max(x,y);
152 printf("max=%d\n",m);//printf("max=%d\n",max(x,y));
153 }
154 int max(int x,int y)
155 {
156 if(x<y)
157 return y;
158 else
159 return x;
160 }
161 //--------------------------------------10
162 #include<stdio.h>
163 int max(int x,int y);
164 void main(void)
165 {
166 int a,b,c,m;
167 printf("Enter a b and c:");
168 scanf("%d%d%d",&a,&b,&c);
169 m=max(a,b);//先比较a,b,找出最大值,然后用这个最大值与c比较
170 m=max(c,m);
171 printf("max=%d\n",m);
172 }
173 int max(int x,int y)
174 {
175 if(x>y)
176 return y;
177 else
178 return x;
179 }
180 //-----------------------------11
181 #include<stdio.h>
182 #define PI 3.14
183 double arearing(int r1,int r2);
184 double area(int r);
185 int main()
186 {
187 int r1=10,r2=20;
188 printf("arearing is %f\n",arearing(r1,r2));
189 }
190 double arearing(int r1,int r2)
191 {
192 double c;
193 c=area(r2)-area(r1);
194 return(c);
195 }
196 double area(int r)
197 {
198 return(r*r*PI);
199 }
200 //---------------------12
201 #include<stdio.h>
202 #define N 20
203 double fac(int n);
204 double sum(int n);
205 void main()
206 {
207 double add;
208 add=sum(N);
209 printf("sum=%e\n",add);
210 }
211 double sum(int n)
212 {
213 int i;
214 double s=0;
215 for(i=1;i<=n;i++)
216 s+=fac(i);
217 return s;
218 }
219 double fac(int i)
220 {
221 double t;
222 int k;
223 t=1;
224 for(k=1;k<=i;k++)
225 {
226 t=t*k;
227 }
228 return t;
229 }
230 //------------------------13
231 #include<stdio.h>
232 void reverse()
233 {
234 char c;//栈区
235 c=getchar();
236 if(c!='\n')
237 reverse();
238 if(c=='\n')
239 putchar('*');
240 putchar(c);
241 }
242 void main()
243 {
244 reverse();
245 putchar('\n');
246 }
247 //------------------------------14
248 #include<stdio.h>
249 long ff(int n);
250 int main()
251 {
252 int n;
253 long y;
254 printf("input a integer number:\n");
255 scanf("%d",&n);
256 y=ff(n);
257 printf("%d!=%ld%n",n,y);
258 }
259 long ff(int n)
260 {
261 long f;
262 if(n<0)
263 printf("n<0,input error");
264 else
265 if(n==0||n==1)
266 f=1;
267 else
268 f=n*ff(n-1);//递归方式
269 return(f);
270 }
271 //---------------------------15
272 #include<stdio.h>
273 int h;
274 double volume(int r);
275 void main(void)
276 {
277 int r;
278 double t;
279 h=10;
280 t=volume(5);
281 printf("t=%f\n",t);
282 }
283 double volume(int r)
284 {
285 return(r*r*3.14*h);
286 }
287 //----------------------------16
288 #include<stdio.h>
289 int prime(int n);
290 void main()
291 {
292 int n;
293 printf("2;");
294 for(n=3;n<=100;n++)
295 {
296 if(prime(n)!=0)
297 printf("%d;",n);
298 }
299 printf("\n");
300 }
301 int prime(int n)
302 {
303 int i,k;
304 k=n-1;
305 for(i=2;i<=k;i++)
306 if(n%i==0)
307 return 0;
308 return 1;
309 }