吉林大学C语言题库.docx
《吉林大学C语言题库.docx》由会员分享,可在线阅读,更多相关《吉林大学C语言题库.docx(12页珍藏版)》请在冰豆网上搜索。
![吉林大学C语言题库.docx](https://file1.bdocx.com/fileroot1/2022-11/21/3a6bacf2-f895-46ec-931e-d3310745a2ee/3a6bacf2-f895-46ec-931e-d3310745a2ee1.gif)
吉林大学C语言题库
Addbccabdbcbddcdbbdbadbcbbbccabaaaabcacc
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
功能:
定义一个结构变量(包括年、月、日)计算给定日
期是该年的第几天。
-------------------------------------------------------*/
#include
#include
main()
{
/***********SPACE***********/
【?
】date
{
inty,m,d;
}da;
intf,n,p,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
printf("y,m,d=");
scanf("%d,%d,%d",&da.y,&da.m,&da.d);
/***********SPACE***********/
f=da.y%4==0&&da.y%100【?
】0||da.y%400==0;
/***********SPACE***********/
if(da.m<1【?
】da.d>12)exit(0);
a[11]+=f;
if(da.d<1||da.d>a[da.m-1])exit(0);
/***********SPACE***********/
for(n=【?
】,p=1;pprintf("n=%d\n",n);
}
/*-------------------------------------------------------
【程序改错】
---------------------------------------------------------
题目:
下列给定程序中函数fun的功能是:
把从主函数中输入的3个数,最大的数放
在a中,中间的数放在b中,最小的数放在c中。
例如:
若输入的数为:
55 12 34,输出的结果应当是:
a=55.0,b=34.0,c=12.0。
-------------------------------------------------------*/
#include
voidfun(float*a,float*b,float*c)
{
/***********FOUND***********/
float*k;
if(*a<*b)
{
k=*a;
*a=*b;
*b=k;
}
/***********FOUND***********/
if(*a>*c)
{
k=*c;
*c=*a;
*a=k;
}
if(*b<*c)
{
k=*b;
*b=*c;
*c=k;
}
}
main()
{
floata,b,c;
printf("Inputabc:
");
scanf("%f%f%f",&a,&b,&c);
printf("a=%4.1f,b=%4.1f,c=%4.1f\n\n",a,b,c);
fun(&a,&b,&c);
printf("a=%4.1f,b=%4.1f,c=%4.1f\n\n",a,b,c);
}
/*-------------------------------------------------------
【程序设计】
---------------------------------------------------------
题目:
规定输入的字符串中只包含字母和*号。
请编写函数fun,其功能
是:
除了字符串前导的*号之外,将串中其它*号全部删除。
在编写函数时,不得使用C语言提供的字符串函数。
例如:
字符串中的容为:
****A*BC*DEF*G*******,删除后,字符串中的容
应当是:
****ABCDEFG。
注意:
请勿改动主函数main和其它函数中的任何容,仅在函数fun的花括号中填入
你编写的若干语句。
-------------------------------------------------------*/
#include
voidwwjt();
voidfun(char*a)
{
/**********Program**********/
/**********End**********/
}
main()
{
chars[81];
printf("Enterastring:
\n");
gets(s);
fun(s);
printf("Thestringafterdeleted:
\n");
puts(s);
wwjt();
}
voidwwjt()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。
*/
FILE*in,*out;
inti;chars[81];
in=fopen("in.dat","r");
if(in==NULL)
{
printf("PleaseVerifyTheCurrerntDir..ItMayBeChanged");
}
out=fopen("out.dat","w");
if(out==NULL)
{
printf("PleaseVerifyTheCurrentDir..ItMayBeChanged");
}
for(i=0;i<10;i++)
{
fscanf(in,"%s",s);
fun(s);
fprintf(out,"%s\n",s);
}
fclose(in);
fclose(out);
}