c语言程序填空含答案教学教材.docx

上传人:b****7 文档编号:25152262 上传时间:2023-06-05 格式:DOCX 页数:51 大小:25.06KB
下载 相关 举报
c语言程序填空含答案教学教材.docx_第1页
第1页 / 共51页
c语言程序填空含答案教学教材.docx_第2页
第2页 / 共51页
c语言程序填空含答案教学教材.docx_第3页
第3页 / 共51页
c语言程序填空含答案教学教材.docx_第4页
第4页 / 共51页
c语言程序填空含答案教学教材.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

c语言程序填空含答案教学教材.docx

《c语言程序填空含答案教学教材.docx》由会员分享,可在线阅读,更多相关《c语言程序填空含答案教学教材.docx(51页珍藏版)》请在冰豆网上搜索。

c语言程序填空含答案教学教材.docx

c语言程序填空含答案教学教材

【程序填空】

功能:

写一个函数,求一个字符串的长度,在main函数中输入字

符串,并输出其长度。

len=length(str);

Intlength(p)

N++;

P++;

【程序改错】

功能:

将一个字符串中的大写字母转换成小写字母。

bool(char)fun(char*c)

fun=c;(return*c)

puts(*p);(putchar(*p))

【程序设计】

功能:

编写函数实现两个数据的交换,在主函数中输入任

意三个数据,调用函数对这三个数据从大到小排序。

------------------------------------------------*/

#include

voidwwjt();

voidswap(int*a,int*b)

{

/**********Program**********/

/**********End**********/

}

main()

{

intx,y,z;

scanf("%d%d%d",&x,&y,&z);

if(x

if(x

if(y

printf("%3d%3d%3d",x,y,z);

wwjt();

}

voidwwjt()

{

FILE*IN,*OUT;

intm,n;

inti[2];

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("ReadFILEError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("WriteFILEError");

}

for(n=0;n<3;n++)

{

for(m=0;m<2;m++)

{

fscanf(IN,"%d",&i[m]);

}

swap(&i[0],&i[1]);

fprintf(OUT,"%d\n",i[0]);

fprintf(OUT,"%d\n",i[1]);

}

fclose(IN);

fclose(OUT);

}

/*-------------------------------------------------------

【程序填空】

功能:

输入3个数a,b,c,按从小到大的顺序输出。

-

if(n1>n2)swap(pointer1,pointer2);

if(n1>n3)swap(pointer1,pointer3);

if(n2>n3)

voidswap(int*p1,int*p2)

【程序改错】

功能:

将s所指字符串的反序和正序进行连接形成一个新串放在

t所指的数组中。

例如:

当s所指的字符串的内容为"ABCD"时,t所指数组中

的内容为"DCBAABCD"。

d=len(s);(strlen(s)

for(i=1(i=0);i

t[2*d]='/0'(‘\0’);

【程序设计】

功能:

把20个随机数存入一个数组,然后输出该数组中的

最小值。

其中确定最小值的下标的操作在fun函数中

实现,请给出该函数的定义。

------------------------------------------------*/

#include

#defineVSIZE20

voidwwjt();

intvector[VSIZE];

intfun(intlist[],intsize)

{

/**********Program**********/

/**********End**********/

}

main()

{

inti;

for(i=0;i

{

vector[i]=rand();

printf("Vector[%d]=%6d\n",i,vector[i]);

}

i=fun(vector,VSIZE);

printf("\nMininum:

Vector[%d]=%6d\n",i,vector[i]);

wwjt();

}

voidwwjt()

{

inti,t;

FILE*fp;

fp=fopen("out.dat","w");

for(i=0;i

{

fprintf(fp,"Vector[%d]=%6d\n",i,vector[i]);

}

t=fun(vector,VSIZE);

fprintf(fp,"\nMininum:

Vector[%d]=%6d\n",t,vector[t]);

fclose(fp);

}

/*-------------------------------------------------------

【程序填空】

功能:

输出9*9口诀。

for(i=1;i<10;i++)

for(j=1;j<10;j++)

printf("%d*%d=%-3d",i,j,result);

【程序改错】

功能:

以下程序把两个数按由大到小的顺序输出来.

swap(int*p1,*p2)(intt)

scanf("%d%d",a,b(&a,&b));

printf("max=%d,min=%d\n",p,q(*p,*q));

【程序设计】

功能:

求1到100之间的偶数之积。

------------------------------------------------*/

#include

voidwwjt();

doublefun(intm)

{

/**********Program**********/

/**********End**********/

}

main()

{

printf("ji=%f\n",fun(100));

wwjt();

}

voidwwjt()

{

FILE*IN,*OUT;

intiIN,i;

doubledOUT;

IN=fopen("23.IN","r");

if(IN==NULL)

{

printf("PleaseVerifyTheCurrerntDir..itMayBeChanged");

}

OUT=fopen("23.out","w");

if(OUT==NULL)

{

printf("PleaseVerifyTheCurrentDir..itMayBeChanged");

}

for(i=0;i<10;i++)

{

fscanf(IN,"%d",&iIN);

dOUT=fun(iIN);

fprintf(OUT,"%f\n",dOUT);

}

fclose(IN);

fclose(OUT);

}

/*-------------------------------------------------------

【程序填空】

功能:

将字母转换成密码,转换规则是将当前字母变成其后的第

四个字母,但W变成A、X变成B、Y变成C、Z变成D。

小写字

母的转换规则同样。

while((c=getchar())!

='\n')

if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))c=c+4;

if((c>'Z'&&c<='Z'+4)||c>'z')

【程序改错】

功能:

编写input()和output()函数输入,输出5个学生的数据记录。

#include

#defineN5

structstudent

{

charnum[6];

charname[8];

intscore[4];

}stu[N];

input(stu)

structstudentstu[];

{

/**********FOUND**********/

inti;j;

for(i=0;i

{

printf("\npleaseinput%dof%d\n",i+1,N);

printf("num:

");

scanf("%s",&stu[i].num);

printf("name:

");

scanf("%s",stu[i].name);

for(j=0;j<3;j++)

{

/**********FOUND**********/

printf("score%d.",j);

scanf("%d",&stu[i].score[j]);

}

printf("\n");

}

}

print(stu)

structstudentstu[];

{

inti,j;

printf("\nNo.NameSco1Sco2Sco3\n");

/**********FOUND**********/

for(i=0;i<=N;i++)

{

printf("%-6s%-10s",stu[i].num,stu[i].name);

for(j=0;j<3;j++)

printf("%-8d",stu[i].score[j]);

printf("\n");

}

}

main()

{

input();

print();

}

/*------------------------------------------------

【程序设计】

功能:

产生20个[30,120]上的随机整数放入二维数组a[5][4]

中,求每行元素的和。

------------------------------------------------*/

#include"stdlib.h"

#include

voidwwjt();

voidrow_sum(inta[5][4],intb[5])

{

/**********Program**********/

/**********End**********/

}

main()

{

voidrow_sum();

inta[5][4],b[5],i,j;

for(i=0;i<5;i++)

for(j=0;j<4;j++)

a[i][j]=rand()%(120-30+1)+30;

for(i=0;i<5;i++)

{

for(j=0;j<4;j++)

printf("%5d",a[i][j]);

printf("\n");

}

row_sum(a,b);

for(i=0;i<5;i++)

printf("%6d",b[i]);

printf("\n");

wwjt();

}

 

voidwwjt()

{

FILE*IN,*OUT;

intm,n;

inti[5][4];

into[5];

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("ReadFILEError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("WriteFILEError");

}

for(m=0;m<5;m++)

for(n=0;n<4;n++)

fscanf(IN,"%d",&i[m][n]);

row_sum(i,o);

for(n=0;n<5;n++)

fprintf(OUT,"%d\n",o[n]);

fclose(IN);

fclose(OUT);

}

/*-------------------------------------------------------

【程序填空】

功能:

在歌星大奖赛中,有10个评委为参赛的选手打分,分数为

1~100分。

选手最后得分为:

去掉一个最高分和一个最低分

后其余8个分数的平均值。

请编写一个程序实现。

scanf("%d",&score);

if(max

if(min>score)

score:

%d\n",(sum-max-min)/8);

【程序改错】

功能:

将s所指字符串的反序和正序进行连接形成一个新串放在

t所指的数组中。

Charfun(char*c)fun=c;return*c

【程序设计】

功能:

将字符串中的小写字母转换为对应的大写字母,

其它字符不变。

------------------------------------------------*/

#include"string.h"

#include

voidwwjt();

voidchange(charstr[])

{

/**********Program**********/

/**********End**********/

}

main()

{

voidchange();

charstr[40];

gets(str);

change(str);

puts(str);

wwjt();

}

voidwwjt()

{

FILE*IN,*OUT;

chari[200];

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("ReadFILEError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("WriteFILEError");

}

fscanf(IN,"%s",i);

change(i);

fprintf(OUT,"%s\n",i);

fclose(IN);

fclose(OUT);

}

/*-------------------------------------------------------

【程序填空】

-功能:

考查字符串数组的应用。

输出26个英文字母。

for(i=0;i<26;i++)

string[i]=‘A’+i;

printf("thearrarycontains%s\n",string);

【程序改错】

功能:

将一个字符串中的大写字母转换成小写字母。

例如:

输入aSdFG输出为asdfg。

------------------------------------------------------*/

#include

/**********FOUND**********/

boolfun(char*c)

{

if(*c<='Z'&&*c>='A')*c-='A'-'a';

/**********FOUND**********/

fun=c;

}

main()

{

/**********FOUND**********/

chars[81],p=s;

gets(s);

while(*p)

{

*p=fun(p);

/**********FOUND**********/

puts(*p);

p++;

}

putchar('\n');

}

/*------------------------------------------------

【程序设计】

功能:

将字符串中的小写字母转换为对应的大写字母,

其它字符不变。

------------------------------------------------*/

#include"string.h"

#include

voidwwjt();

voidchange(charstr[])

{

/**********Program********

/**********End**********/

}

main()

{

voidchange();

charstr[40];

gets(str);

change(str);

puts(str);

wwjt();

}

voidwwjt()

{

FILE*IN,*OUT;

chari[200];

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("ReadFILEError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("WriteFILEError");

}

fscanf(IN,"%s",i);

change(i);

fprintf(OUT,"%s\n",i);

fclose(IN);

fclose(OUT);

}

/*-------------------------------------------------------

【程序填空】

功能:

从读入的整数数据中,统计大于零的整数个数和小于零的

整数个数。

用输入零来结束输入,程序中用变量i统计大于

零的整数个数,用变量j统计小于零的整数个数。

if(n>0)i=i+1;

if(n<0)j=j+1;

scanf("%d",&n);

printf("i=%4d\n",i,j);

}

【程序改错】

功能:

实现交换两个整数的值。

voidfun(inta,b(int*a,int*b)

t=at=*a

a=b;(*a=*b)

b=t;*b=t

{

inta,b;

printf("enter

【程序设计】

功能:

从键盘上输入任意实数x,求出其所对应的函数值。

z=(x-4)的二次幂(x>4)

z=x的八次幂(x>-4)

z=z=4/(x*(x+1))(x>-10)

z=|x|+20(其他)

------------------------------------------------*/

#include

#include

voidwwjt();

floaty(floatx)

{

/**********Program**********/

/**********End**********/

}

main()

{

floatx;

scanf("%f",&x);

printf("y=%f\n",y(x));

wwjt();

}

voidwwjt()

{

FILE*IN,*OUT;

intn;

floati;

floato;

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("ReadFILEError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("WriteFILEError");

}

for(n=0;n<10;n++)

{

fscanf(IN,"%f",&i);

o=y(i);

fprintf(OUT,"%f\n",o);

}

fclose(IN);

fclose(OUT);

}

/*-------------------------------------------------------

【程序填空】

功能:

删除字符串中的数字字符。

例如:

输入字符串:

48CTYP9E6,则输出:

CTYPE。

voidfun(char*s)

else*s++=*p++;

*s=’\0’;

【程序改错】

功能:

实现交换两个整数的值。

例如:

给a和b分别输入3和6,输出为a=6b=3

------------------------------------------------------*/

#include

/**********FOUND**********/

voidfun(inta,b)

{

intt;

/**********FOUND**********/

t=a;

/**********FOUND**********/

a=b;

/**********FOUND**********/

b=t;

}

main()

{

inta,b;

printf("entera,b:

");scanf("%d%d",&a,&b);

fun(&a,&b);

printf("a=%db=%d\n",a,b);

}

/*------------------------------------------------

【程序设计】

功能:

能计算从1开始到n的自然数中偶数的平方的和,n由

键盘输入,并在main()函数中输出。

(n是偶数)

------------------------------------------------*/

#include

voidwwjt();

intfun(intn)

{

/**********Program**********/

/**********End**********/

}

main()

{

intm;

printf("Enterm:

");

scanf("%d",&m);

printf("\nTheresultis%d\n",fun(m));

wwjt();

}

voidwwjt()

{

FILE*IN,*OUT;

intt;

into;

intc;

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("ReadFILEError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("WriteFILEError");

}

for(c=1;c<=5;c++)

{

fscanf(IN,"%d",&t);

o=fun(t);

fprintf(OUT,"%d\n",o);

}

fclose(IN);

fclose(OUT);

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1