问答题请编写函数fun,其功能是:判断t所指字符串中的字母是否由连续递增字母序列组成(字符串长度大于等于2)。例如字符串:uvwxyz满足要求;而字符串:uvxwyz不满足要求。注意:部分源程序存放在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun指定的部位填入所编写的若干语句。试题程序:#include<stdio.h>#include<string.h>void NONO();int fun(char*t){}main(){ char s[26]; printf("请输入一个字母组成的字符串:");gets(s); if(fun(s))printf("%s是由连续字母组成的字符串.\n",S); else printf("%s不是由连续字母组成的字符串!\n",S); NONO(); } void NONO(){/*本函数用于打开文件,输人数据,调用函数,输出数据,关闭文件。*/ FILE*fp,*wf; int i; char s[26],*P; fp=fopen("C:\\test\\in.dat","r"); wf=fopen ("c:\\test\\out.dat","w"); for(i=0;i<10;i++){ fgets(s,26,fp); p=strchr(s,'\n'); if(p)*p=0; if(fun(s))fprintf(wf,"%s\n",s+2); else fprintf(wf,"%s\n",strrev(s)); } fclose(fp); fclose(wf);}
问答题编写函数fun,其功能是:将两个两位数的正整数a、b合并成—个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。 例如,当a:45,b=12时,调用该函数后,c=5142。 注意:部分源程序给出如下。数据文件IN.DAT中的数据不得修改。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。 试题程序:#include < stdlib.h >#include < stdio.h >#include < conio.h >void fun(int a,int b,long*c){}void main(){ int a,b; long c; system("CLS"); printf("Input a,b:"); scar1f("%d%d",&a,&b); fun(a,b,&c); printf ("The result is:%ld/n",c);}
问答题请编写函数proc(),该函数的功能是:实现B=A+A",即把矩阵A加上A的转置,存放在矩阵B中。计算结果在main()函数中输出。
例如,输入下面矩阵:
1 1 1
4 4 4
7 7 7
其转置矩阵为:
1 4 7
1 4 7
1 4 7
则程序输出:
2 5 8
5 8 11
8 11 14
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void proc(int a[3][3], int b[3][3])
{
}
void main()
{int arr[3][3]={{1, 1, 1}, {4, 4, 4}, {7, 7, 7}}, t[3][3];
int i, j;
system("CLS");
proc(art, t);
for(i=0; i<3; i++)
{
for(j=0; j<3; j++)
printf("%7d", t[i][j]);
printf("/n");
}
}
问答题给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
void fun(char *s, int a, double f)
{
/**********found**********/
__1__ fp;
char ch;
fp = fopen("file1.txt", "w");
fprintf(fp, "%s %d %f/n", s, a, f);
fclose(fp);
fp = fopen("file1.txt", "r");
printf("/nThe result :/n/n");
ch = fgetc(fp);
/**********found**********/
while (!feof(__2__)) {
/**********found**********/
putchar(__3__); ch = fgetc(fp); }
putchar('/n');
fclose(fp);
}
main()
{ char a[10]="Hello!"; int b=12345;
double c= 98.76;
fun(a,b,c);
}
问答题请编写一个函数fun(),其功能是比较两个字符串的长度(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。 例如,输入beijing<CR>shanghai<CR>(<CR>为回车键),函数将返回shanghai。 #include<stdio.h> char*fun(char*s,char*t) main() char a[20],b[20]; void NONO(); printf("Input 1th string:"); gets(a); printf("Input 2th string:"); gets(b); printf("%s/n",fun(a,b));
问答题编写函数fun(),它的功能是:计算和输出下列级数的和。
S=1/(1×2)+1/(2×3)+…+1/(n×(n+1))
例如,当n=10时,函数值为0.909091。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序;
#include<conio.h>
#include<stdio.h>
double fun(int n)
{
}
main ( )
{
clrscr();
printf("%f/n",fun(10));
}
问答题下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),该函数的功能是:将数组左下半三角元素中的值全部置成0。例如a数组中的值为:1 9 72 3 84 5 6则返回主程序后a数组中的值应为:0 9 70 0 80 0 0 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include<conio.h>#include<stdio.h>#include<stdlib.h>#define N 5 void fun(int a[][N]){}void main(){ int a[N][N],i,j; system("CLS"); printf("****The array****\n"); for(i=0;i<N;i++) /*产生一个随机的5*5矩阵*/ { for(j=0;j<N;j++) { a[i][j]=rand()%10; printf("%4d",a[i][j]); } printf("\n"); } fun(a); printf("THE RESULT\n"); for(i=0;i<N;i++) { for(j=0;j<N;j++) printf("%4d",a[i][j]); printf("\n"); }}
问答题给定程序MODI1.C中fun函数的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。
例如,若输入“I am a student to take the examination.”,则应输出“I aM A studenT tO take thE examination.”。
请修改程序中的错误之处,使它能得出正确的结果。
注意:不要改动main函数,不得删行,也不得更改程序的结构!
#include
#include
#include
void fun(char *p)
{
int k = 0;
for(; *p; p++)
if (k)
{
/********** found***********/
if(p == ' ')
{
k = 0;
/********** found***********/
* (p) = toupper(*(p - 1))
}
}
else
k = 1;
}
main ()
{ char chrstr[64];
int d ;
printf("/nPlease enter an English
sentence within 63 letters: ");
gets(chrstr);
d=strlen(chrstr);
chrstr[d] = ' ' ;
chrstr[d+1] = 0 ;
printf("/n/nBefore
changing:/n %s", chrstr);
fun (chrstr) ;
printf("/nAfter
changing:/n %s", chrstr);
}
问答题给定程序MODI1.C中函数fun的功能是: 在字符串的最前端加入n个*号, 形成新串, 并且覆盖原串。
注意: 字符串的长度最长允许为79。
请改正函数fun中指定部位的错误, 使它能得出正确的结果。
注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!
给定源程序:
#include
#include
void fun ( char s[], int n )
{
char a[80] , *p;
int i;
s=p;
for(i=0; i
问答题程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(inta[][N],intn),该函数的功能是:使数组左下半三角元素中的值乘以n。例如,若n的值为3,a数组中的值为:则返回主程序后a数组中的值应为:注意:部分源程序给出如下。请勿改动函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#inclucle<stdio.h>#inclucle<conio.h>#inclucie<stdlib.h>#defineN5voidfun(inta[][N],intn){}main(){inta[N][N],n,i,j;printf("*****Thearray*****/n");for(i=0;i<N;i++){for(j=0;j<N;j++){a[i][j]=rand()%10;printf("%4d",a[i][j]);}printf("/n");}n=rand()%4;printf("n=%4d/n",n);fun(a,n);printf("*****TGERESULT*****/n");for(i=0;i<N;i++){for(j=0;j<N;j++)printf("%4d",a[i][j]);printf("/n");}}
问答题请编写函数fun,其功能是:计算并输出下列多项式的值:例如,在主函数中从键盘给n输入15,则输出为:s=2.718282。注意:要求n的值大于1但不大于100。部分源程序在文件PROGI.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#includedoublefun(intn){}main(){intn;doubles;printf("Inputn:”);scanf("%d",&n);s=fun(n);printf("s=%f/n",s);NONO();}NONO(){/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/FILE*rf,*wf;intn,i;doubleS;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i
问答题main()
{ int a=8 , b=1;
a=a+b;
b=a*b;
printf("a=%d,b=%d",a,b); }
该程序的运行结果是___________________________________。
问答题
请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。
例如,输入如下整数:876 675 896 101 301 401 980 431 451 777
则输出结果为:6,980
注意:部分源程序在文件PROG1.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include <stdio.h>
void fun(int *s,int t,int *k)
{
}
main()
{
int a[10]={876,675,896,101,301,401,980,431,451,777},k;void NONO();
fun(a,10,
printf("%d,%d/n",k,a[k]);
NONO();
}
void NONO()
{/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。 */
int a[10],i,k,j;
FILE *rf,*wf;
rf=fopen("in.dat","r") ;
wf=fopen("out.dat","w");
for(i=0;i<10;i++) {
for(j=0;j<10;j++) fscanf(rf,"%d",
fun(a,10,
fprintf(wf,"%d,%d/n",k,a[k]);
}
fclose(rf);
fclose(wf);
}
问答题下列给定程序中,函数fun的功能是进行数字字符转换。若形参ch中是数字字符‘0’一‘9’,则将‘0’转换成‘9’,‘1’转换成‘8’,‘2’转换成‘7’,…,‘9’转换成‘0’;若是其他字符则保持不变;并将转换后的结果作为函数值返回。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio.h >
/*********found*********/
【1】
fun(char ch)
{
/*********found*********/
if(ch >='0'&&
【2】
)
/*********found*********/
return'9'一(ch—
【3】
);
return ch;
}
main()
{ char c1,c2;
printf("/nThe result:n");
c1='2';c2=fun(c1);
printf("c1=%c c2=%cn",c1,c2);
c1='8';c2=fun(c1);
printf("c1=%c c2=%cn",c1,c2);
c1='a'; c2=fun(c1);
print("c1=%c c2=%cn",c1,c2);
}
问答题给定程序中,函数fun的功能是:求ss所指字符串数组中长度最长的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。ss所指字符串数组中共有M个字符串,且串长<N。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #include<string.h> #define M 5 #define N 20 /******found******/ int fun(char(*ss)【1】,int *n) { int i,k=0,len=0; for(i=0;i<M;i++) { len=strlen(ss[i]); /******found******/ if(i==0) *n=【2】; if(len>*n) { /******found******/ 【3】;k=i; } } return(k); } main() { char ss[M][N]={"shanghai","guangzhou","beijing","tianjing","cchongqing"}; int n,k,i; printf("The original strings are:\n"); for(i=0;i<M;i++) puts(ss[i]); k=fun(ss,&n); printf("The length of longest string is:%d\n",n); printf("The longest string is:%s\n",ss[k]); }
问答题
给定程序MODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。
例如:当输入100时,输出:
100=9+10+1l+12+13+14+15+16
100=18+19+20+21+22
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
1 #include<stdio.h>
2 void fun(int n)
3 { int j,b,c,m,flag=0;
4 for(b=1;b<=n/2;b++){
5/*********found*********/
6 n=m;
7 c=b;
8 while(m! =0c++
11 }
12 /*********found*********/
13 if(m!=0)
14 {printf("%d="n);
15 for(j=b;j<c-1;j++)
printf("%d+",j);
16 printf("%d/n",j);
17 flag=1;
18 }
19 }
20 if(flag=0)
21 printf("不能分解/n");
22 }
23 main()
24 { int n;
25 printf("请输入一个整数:");
scanf("%d",
26 fun(in);
27 }
问答题给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置0)。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANKl.C中。不得增行或删行,也不得更改程序的结构!
试题程序:
#include
#include
#define N 20
void fun(int*a)
{ int i,x,n=0;
x=rand()%20;
/**********found**********/
while(n<【1】)
{for(i=0;i<n;i++)
/**********found**********/
if(X==a[i])
【2】;
/**********found**********/
if(i==【3】)
{a[n]=x;n++;}
x=rand()%20;
}
}
main()
{int x[N]={0},i;
fun(x);
printf("The result:\n");
for(i=0;i<N;i++)
{printf("%4d",x[i]);
if((i+1)%5==0)printf("\n");
}
printf("\n\n");
}
问答题下列给定程序中函数fun()的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。
例如,当s中的数为87653142时,t中的数为7531。
请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序 #include
<stdlib.h> #include <stdio.h> #include
<conio.h> void fun(long s, long * t) { int
d; long s1=1; *t=0;
while(s>0) { d=s% 10; if(d% 2!=0)
{ *t=d*s1+*t; s1______10; }
s/ =10; } } void
main() { long s, t; printf("/nPlease enter
s:"); scanf("% ld", fun(s,
printf("The result is:% ld/n", t); }
问答题给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文本文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi和atof将字符串转换成相应的整数、浮点数,然后将其显示在屏幕上。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
void fun (char *s, int a, double f)
{
/********** found**********/
【1】fp
char
str[100],strl[100],str2[100] ;
int al; double fl;
fp = fopen("filel.txt", "w");
fprintf(fp, "%s %d %f/n", s, a,
f);
/*********found**********/
【2】;
fp = fopen("filel.txt", "r");
/*********found**********/
fscanf(【3】, "%s%s%s", str,
strl, str2);
fclose (fp);
al = atoi(strl);
fl = atof(str2);
printf("/nThe
result :/n/n%s %d %f/n", str, al,
fl);
}
main ()
{ char a[10]="Hello!"; int b=12345;
double c= 98.76;
fun(a,b,c);
}
问答题下列给定程序是建立一个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。 请改正函数fun中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODI1.C中,不要改动maln函数,不得增行或删行,也不得更改程序的结构! 试题程序:#include < stdio .h >#include < conio .h >#include < stcilib.h >typedef struct aa{ int data; struct aa * next;} NODE;int fun (NODE*h){ int sum =0; NODE *p; p = h一 > next;/*********found*********/ while (p 一 > next) { if (p 一 >data% 2 ==0) sum += p 一 > data;/*********found*********/ p = h 一 > next; } return sum;}NODE * creatlink (int n) { NODE *h, *p, * s; int i; h=p=(NODE * ) malloc ( sizeof(NODE)); for(i=1,i < n ; i++) { s=(NODE * ) malloc ( sizeof(NODE)); s 一 > data = rand () % 16; s 一 > next =p 一 > next; p 一 > next = s; p =p 一 > next; } p 一 > next = NULL; return h;}outlink (NODE*h){ NODE *p; p= h 一 > next; printf ("/n/n The LIST :/n/nHEAD") ; while (p) { printf ("一 > % d",p 一 > data) ; p =p 一 > next; } printf "/n") ; }void main (){ NODE *head; int sum; system ( "CLS") ; head = creatlink (10) ; outlink (head) ; sum = fun (head) ; printf ( " /nSUM =% d", sum) ;}