活动设计题 函数fun的功能是:将s所指字符串中除下标为偶数同时ASCII码值也为偶数的字符外,其余的全部删除;字符串中剩余字符所形成的新串放在t所指的数组中。
例如,若s所指字符串中的内容为
“ABCDEFGl23456”,其中字符A的ASCII码值为奇数,因此应当删除;字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;字符2的ASCII码值为偶数,在数组中的下标也为偶数,因此不应当删除,其他依次类推。最后t所指的数组中的内容应是“246”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
void fun(char*s, char t[])
{
}
void main()
{
char s[100],t[100];
system('CLS');
printf('\nPlease enter string S:');
scanf('%s',s);
fun(s,t);
printf('\nThe result is:%s\n',t);
}
活动设计题 请编一个函数void fun(int tt[M][N], int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。二维数组中的数已在主函数中赋予。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include <stdio.h>
#define M 3
#define N 4
void fun (int tt[M][N], int pp[N])
{
}
main()
{
int t [M][N]={{22,45, 56,30},
{19,33,45,38},
{20,22,66,40}};
int p[N], i, j, k;
printf ('The original data is :\n');
for(i=0; i<M; i++){
for(j=0; j<N; j++)
printf('%6d', t[i][j]);
printf('\n');
}
fun(t,p);
printf('\nThe result is:\n');
for(k=0; k<N; k++) printf('%4d', p[k]);
printf('\n');
}
活动设计题 请编写函数fun,其功能是:统计s所指字符串中的数字字符个数,并作为函数值返回。
例如,s所指字符串中的内容是:2def35adh253kjsdf7/kj8655x,
函数fun返回值为:11
注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <stdio.h>
void NONO();
int fun(char *s)
{
}
main()
{char *s='2def35adh25 3kjsdf7/kj8655x';
printf('% s\n',s);
printf('% d\n',fun(s));
NONO();
}
void NONO()
(/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
FILE *fp,*wf;
int i;
char s[256];
fp=fopen('in.dat','r');
wf=fopen('out.dat','w');
for(i=0;i<10;i++){
fgets(s,255,fp);
fprintf(wf,'%d\n',fun(s));
}
fclose(fp);
fclose(wf);
}
活动设计题 请编写函数fun,函数的功能是:统计各年龄段的人数。N个年龄通过调用随机函数获得,并放存主函数的age数组中;要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中,把20至29岁年龄段的人数放在d[2]中,其余依此类推,把100岁(含100)以上年龄的人数都放在d[10]中。结果在主函数中输出。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include<stdio.h>
#define N 50
#define M 11
void fun(int *a,int *b)
{
}
double rnd()
{static t=29,c=217,m=1024,r=0;
r=(r*t+c)%m;return((double)r/m);
}
main()
{int age[N],i,d[M];
for(i=0;i<N;i++)age[i]=(int)(115*rnd());
printf('The original data:\n');
for(i=0;i<N;i++)printf((i+1)%10==0?'%4d\n':'%4d',age[i]);
printf('\n\n');
fun(age,d);
for(i=0;i<10;i++)printf('%4d---%4d:%4d\n',i*10,i*10+9,d[i]);
printf('Over 100:%4d\n',d[10]);
}
活动设计题
函数fun的功能:将s所指字符串中下标为偶数且ASCII码值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。
例如,若s所指字符串中的内容为“ABCDEFG12345”,其中字符C的ASCII码值为奇数,在数组中的下标为偶数,因此必须删除;而字符1的ASCII码值为奇数,在数组中的下标也为奇数,因此不应当删除,其他依次类推。最后,t所指的数组中的内容应是“BDF12345”。
注意:部分源程序存放在文件PROG1.c中。清勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。
给定源程序如下:
#include stdio.h
#include string.h
void fun(char *s, char t[])
{
}
main()
{
char s[100], t[100];void NONO ();
printf('\nPlease enter string S:'); scanf('%s', s);
fun(s, t);
printf('\nThe result is: %s\n', t);
NONO();
}
void NONO ()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
char s[100], t[100] ;
FILE *rf, *wf ;
int i ;
rf = fopen('..\\in.dat','r') ;
wf = fopen('..\\out.dat','w') ;
for(i = 0 ; i 10 ; i++) {
fscanf(rf, '%s', s) ;
fun(s, t) ;
fprintf(wf, '%s\n', t) ;
}
fclose(rf) ;
fclose(wf) ;
}
活动设计题 函数fun的功能是:将a、b中的两个两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的十位和千位上,b中的十位和个位数依次放在变量c的个位和百位上。
例如,当a=45,b=12。调用该函数后,c=5241。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include<stdio.h>
void fun(int a, int b, long *c)
{
}
main()
{ int a, b; long c;
printf('Input a b:');
scanf('%d%d', a, b);
fun(a, b, c);
printf('The result is:%ld\n', c);
}
活动设计题编写函数fun(),其功能是计算:将s作为函数值返回。在C语言中可调用log(n)函数求ln(n)。log()函数的引用说明为:doublelog(doublex)。例如,若m的值为20,则fun()函数值为6.506583。注意:部分源程序如下。请勿改动main()函数和其他函数中的任何内容,仅在函数fun()的花括号中填入所编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#include<math.h>doublefun(intm){}voidmain(){system('CLS');printf('%f\n',fun(20));}
活动设计题
编写函数fun,函数的功能是求出小于或等于lim的所有素数并放在aa数组中,函数返回所求出的素数的个数。函数fun中给出的语句仅供参考。
注意:部分源程序存放在文件PROG1.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。
给定源程序如下:
#include stdio.h
#define MAX 100
int fun(int lim, int aa[MAX])
{
/* 以下代码仅供参考 */
int i,j,k=0;
/* 其中变量k用于统计素数个数 */
for(i=2;i=lim;i++)
{
/* 以下找出小于或等于lim的素数存入aa数组中并统计素数个数 */
}
return k;
}
main()
{
int limit, i, sum;void NONO ();
int aa[MAX] ;
printf('输入一个整数:');
scanf('%d', limit);
sum=fun(limit, aa);
for(i=0 ; i sum ; i++) {
if(i % 10 == 0 i != 0) printf('\n') ;
printf('%5d', aa[i]) ;
}
NONO();
}
void NONO ()
{
/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,
输出数据,关闭文件。 */
FILE *rf, *wf ;
int limit, i, sum, aa[MAX] ;
rf = fopen('..\\in.dat','r') ;
wf = fopen('..\\out.dat','w') ;
fscanf(rf, '%d', limit);
sum=fun(limit, aa);
for(i=0 ; i sum ; i++) fprintf(wf,'%d\n', aa[i]) ;
fclose(rf) ;
fclose(wf) ;
}
活动设计题请编写函数proc(),该函数的功能是:将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。例如,若二维数组中的数据为:则字符串中的内容应是“WSHIWSHIWSHI”。注意:部分源程序如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。试题程序:#include<stdio.h>#defineM4#defineN3voidproc(char(*s)[N],char*b){}voidmain(){chara[100],w[M][N]={{'W','W','W'},{'S','S','S',},{'H','H','H',},{'I','I','I'}};inti,j;printf('Thematrix:\n');for(i=0;i<M;i++){for(j=0;j<N;j++)printf('%3c',w[i][j]);printf('\n');}proc(w,a);printf('TheAstring:\n');puts(a);printf('\n\n');}
活动设计题 规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。
例如,字符串中的内容为“****A*BC*DEF*G*******,删除后,字符串中的内容应当是“****A*BC*DEF*G”。在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
void fun(char*a)
{
}
void main()
{ char s[81];
printf('Enter a string:\n');
gets(s);fun(s);
printf('The string after deleted:\n');
puts(s);}
活动设计题 请编写函数proc(),其功能是:将str所指字符串中除下标为偶数、同时ASCII码值为奇数的字符外,其余的字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中。例如,若str所指字符串中的内容为ABCDEFG12345,其中字符B的ASCII码值为偶数,所在元素的下标为奇数,因此必须删除;而字符A的ASCII码值为奇数,所在数组中的下标为偶数,因此不应当删除。依此类推,最后t所指的数组中的内容应是ACEG。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所写的若干语句。
试题程序:
# include <stdlib.h>
# include <conio.h>
# include <stdio.h>
# include <string.h>
void proc(char*str, char t[])
{
}
void main()
{
char str[100],t[100];
system('CLS');
printf('\nPlease enter string str: ');
scanf('% s', str);
proc(str,t);
printf('\nThe result is:% s\n',t);
活动设计题 编写函数fun,函数的功能是求出小于或等于lim的所有素数并放在aa数组中,函数返回所求出的素数的个数。函数fun中给出的语句仅供参考。
注意:部分源程序存在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。
给定源程序如下。
#include<stdio.h>
#define MAX 100
int fun(int lim,int aa[MAX])
{
/*以下代码仅供参考*/
int i,j,k=0;
/*其中变量k用于统计素数个数*/
for(i=2;i<=lim;i++)
{
/*以下找出小于或等于lim的素数存入aa数组中并统计素数个数*/
}
return k;
}
main()
{
int limit,i,sum;
int aa[MAX];
printf('输入一个整数:');
scanf('%d',limit);
sum=fun(limit,aa);
for(i=0;i<sum;i++){
if(i%10==0i!=0)printf('\n');
printf('%5d',aa[i]);
}
}
活动设计题 编写函数fun,其功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的十位和千位上。
例如,当a=45,b=12时,调用该函数后c=2514。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
void fun(int a,int b,long *c)
{
}
main()
{
int a,b;
long c;
printf('Input a,b:');
scanf('% d% d',a,b);
fun(a,b,c);
printf('The result is:%ld\n',c);
}
活动设计题请编写函数fun,其功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单元中。例如,若二维数组中的数据为则一维数组中的内容应是:334455334455334455334455注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stdio.h>voidfun(int(*s)[10],int*b,int*n,intmm,intnn){}main(){intw[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;inta[100]={0},n=0;printf('Thematrix:\n');for(i=0;i<3;i++){for(j=0;j<4;j++)printf('%3d',w[i][j]);printf('\n');}fun(w,a,n,3,4);printf('TheAarray:\n');for(i=0;i<n;i++)printf('%3d',a[i]);}
活动设计题请编写函数fun,其功能是:计算并输出下列多项式的值。例如,当n=10时,函数值为0.909091。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>#include<stdlib.h>doublefun(intn){}voidmain(){FILE*wf;system('CLS');printf('%f\n',fun(10));/******************/wf=fopen('out.dat','w');fprintf(wf,'%f',fun(10));fclose(wf);/******************/}
活动设计题
请编写函数fun,它的功能是求出能整除形参x且不是偶数的所有整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。
例如,若x中的值为35,则有4个数符合要求,它们是:1、5、7、35。
注意:部分源程序存放在文件PROG1.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。
给定源程序如下:
#include stdio.h
void fun ( int x, int pp[], int *n )
{
}
main( )
{ int x, aa[1000], n, i ;void NONO ();
printf( '\nPlease enter an integer number:\n' ) ; scanf('%d', x) ;
fun(x, aa, n ) ;
for( i = 0 ; i n ; i++ )
printf('%d ', aa[i]) ;
printf('\n') ;
NONO( ) ;
}
void NONO ()
{/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
int x, aa[1000], n, i, j ;
FILE *fp ;
fp = fopen('..\\out.dat','w') ;
for(j = 0 ; j 10 ; j++) {
x = 30 + j ;
fun(x, aa, n) ;
for(i = 0 ; i n ; i++) fprintf(fp, '%d ', aa[i]) ;
fprintf(fp, '\n') ;
}
fclose(fp) ;
}
活动设计题
请编写一个函数void fun(char *tt, int pp[]),统计在tt所指字符串中'a'到'z' 26个小写字母各自出现的次数,并依次放在pp所指数组中。
例如,当输入字符串:abcdefgabcdeabc后,程序的输出结果应该是:
3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
#include<string.h>
void fun(char *tt, int pp[])
{
}
main()
{char aa[1000];
int bb[26], k;
void NONO();
printf('\nPlease enter a char string:'); scazf('%s', aa);
fun(aa, bb);
for(k=0; k<26; k++)printf('%d', bb[k]);
printf('\n');
NONO();
}
void NONO()
{/*本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
char as[1000];
int bb[26], k, i;
FILE *rf, *wf;
rf=fopen('in.dat', 'r');
wf=fopen('out.dat', 'w');
for(i=0; i<10; i++) {
fscanf(rf, '%s', aa);
fun(aa, bb);
for(k=0; k<26; k++)fprintf(wf, '%d', bb[k]);
fprintf(wf, '\n');
}
fclose(rf);
fclose(wf);
}
活动设计题
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。
注意:部分源程序存在文件PROG1.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数如n的花括号中填入你编写的若干语句。
#include <stdio.h>
#include <string.h>
#define N 10
typedef struct ss
{ char hum[10];int s;} STU;
void fun(STU a[],STU *s)
{
}
main()
{STU a[N]={{'A01',81},{'A02',89},{'A03',66},{'A04',87},{'A05',77},{'A06',90},{'A07',79},{'A08',61},{'A09',80},{'A10',71}},m;
int i;void NONO();
printf('***** The original data *****\n');
for(i=0;i<N;i++)printf('No=%s Mark=%d\n',a[i].num,a[i].s);
fun (a,m);
printf('***** THE RESULT *****\n');
printf('The lowest:%s,%d\n',m.num,m.s);
NONO();
}
void NONO()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
FILE *rf,*wf;
STU a[N],m;
int i;
rf=fopen('in.dat','r');
wf=fopen('out.dat','w');
for(i=0;i<10;i++) fscanf (rf,'%s %d',a[i].num,a[i].s);
fun(a,m);
fprintf(wf,'The lowest:%s,%d\n',m.num,m.s);
fclose(rf);
fclose(wf);
}
活动设计题 请编写函数proc(),该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。
例如,若字符串数组中的M个字符串为:
ABCD
BCDEFG
CDEFGHI
则合并后的字符串内容应该是ABCDBCDEFGCDEFGHI。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#define M 3
#define N 20
void proc(char arr[M][N], char*b)
{
}
void main()
{
char str[M][N]={'ABCD', 'BCDEFG', 'CDEFGHI'}, i;
char arr[100]={'##################'};
printf('The string: \n');
for(i=0; i<M; i++)
puts(str[i]);
printf('\n');
proc(str,arr);
printf('The A string: \n');
printf('%s', arr);
printf('\n\n');
}
活动设计题 请编写一个函数void proc(char *tt, int pp[]),统计在tt字符串中“a”到“z”26个字母各自出现的次数,并依次放在pp所指数组中。
例如,当输入字符串abcdefghxyzabcdeffe后,程序的输出结果应该是:2 2 2 2 3 3 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1。
注意:部分源程序如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
void proc(char *tt,int pp[])
{
}
void main()
{
char str[1000];
int bb[26],k;
system('CLS');
printf(t'\nPlease enter a char string:');
scanf('%s',str);
proc(str,bb);
for(k=0;k<26;k++)
printf('%d',bb[k]);
printf('\n');
}
