问题3_1
函数
f
u
n
fun
fun 的功能是:统计形参
s
s
s 所指的字符串中数字字符出现的次数,并存放在形参
t
t
t 所指的变量中,最后在主函数中输出。
例如,若形参
s
s
s 所指的字符串为
a
b
c
d
e
f
234
a
d
d
a
d
15
a
d
6
abcdef234addad15ad6
abcdef234addad15ad6,则函数返回值为
6
6
6。
代码3_1
#include<stdio.h>
void fun(char* s, int* t){
int i, n;
n = 0;
for(i=0; s[i]!=0; i++){
if(s[i]>='0'&&s[i]<='9')
n++;
}
*t = n;
}
void main(void){
char s[80] = "abc123afg45hj6";
int t;
printf("\n The original string is:%s\n", s);
fun(s, &t);
printf("\n The result is: %d\n", t);
}
结果3_1
问题3_2
函数 f u n fun fun 的功能是:实现两个变量值的交换。
例如,若形参 a a a 的原值为 0 0 0, b b b 的原值为 1 1 1,运行程序后, a a a 的值为 1 1 1, b b b 的值为 0 0 0。
代码3_2
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int fun(int* x, int y){
int t;
t = *x;
*x = y;
return(t);
}
void main(void){
int a=0, b=1;
system("CLS"); // 清屏作用,清空所有输出。
printf("%d %d\n", a, b);
b = fun(&a, b);
printf("%d %d\n", a, b);
}
结果3_2
问题3_3
函数 f u n fun fun 的功能是:求出 1 − 1000 1-1000 1−1000 能被 7 7 7 或 11 11 11 整除,但不能同时被 7 7 7 和 11 11 11 整除的所有整数,并将其放在 a a a 所指的数组中,通过 n n n 返回这些数的个数。
代码3_3
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void fun(int* a, int* n){
int i, j=0;
for(i=1; i<=1000; i++){
if((i%7==0 || i%11==0)&& i%77!=0)
a[j++] = i;
}
*n = j;
}
void main(void){
int aa[1000], n, k;
system("CLS"); // 清屏作用,清空所有输出。
fun(aa, &n);
for(k=0; k<n; k++){
if((k+1)%10==0){
printf("%5d", aa[k]);
printf("\n");
}
else
printf("%5d", aa[k]);
}
}