填空题如果有以下定义,则不移动指针p,且通过指针p引用值为98的数组元素的表达式是{{U}} 【11】 {{/U}}。
int w[10]={23,54,10,33,47,98,72,80,61),*p=w;
填空题下列程序的输出结果是______。
#include<stdio.h>
#define N 5
jnt fun(int*s,int a,int n)
{ int j;
*s=a;j=n:
while(a!=s[j])j--;
return j;
}
main()
{ int s[N+1];int k;
for(k=1;k<=N;k++)s[k]=k+1;
printf("%d/n",fun(s,4,N));
}
填空题实现程序可将磁盘中的一个文件复制到另一个文件中,两个文件的文件名在可执行命令的命令行中(相当于copy命令),假定文件在当前目录下。请补全程序。 #include<stdio.h> void main(int argc,char*argv[]) FILE*f1,*f2; if(argc< 【13】 ) printf("parameter error!/n");exit(0); n=fopen(argv[1],"r"); f2=fopen(argv[2],"w"); while( 【14】 )fputc(fgetc(f1),f2); fclose(f1); fclose(f2);
填空题以下程序运行后的输出结果是【 】。
main( )
{ char a[ ]="123456789",*p; int i=0;
p=a;
while(*p)
{ if(i%2==0) *p=''*'';
p++;i++;
}
puts(a);
}
填空题用二维表的形式来表示实体之间联系的数据模型叫做 [4] 。
填空题请补充main 函数,该函数的功能是:先以只写方式打开文件“out99.dat”,再把字符串str中的字符保存到这个磁盘文件中。 注意:部分源程序给出如下。 请勿改动主函数main 和其他函数中的任何内容,仅在 main 函数的横线上填入所编写的若干表达式或语句。 试题程序: #include "stdio. h" #include "conio.h" #define N 80 main () FILE *fp; int i=0; char ch; char str[N]="I'm a student!"; clrscr(); if ( (fp=fopen ( 【1】 ) ) ==NULL) printf("cannot open out99. dat/n"); exit(0); while (str[i]) ch=str[i]; 【2】 ; putchar(ch); i++; 【3】 ;
填空题以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。请填空。
void sstrcpy(char *s,char *t)
{ while(*s++={{U}} 【15】 {{/U}});}
main()
{ char str1[100],str2[]="abcdefgh";
sstrcpy(str1,str2);
printf("%s/n",str1);
}
填空题自动批处理文件名必须是 【4】 。
填空题若有定义语句:char str[] = "0";,则字符串str在内在中实际占U [13] /U字节。
填空题以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 main() int t=0,s=0,i; for(i=1;i<=5;i++) t=i+{{U}} {{/U}};s=s+t; printf("s=%d//n",s);
填空题以下程序的运行结果是______。 # include <string.h> typedef struct student char name[10]; long sno; float score; STU; main() STU a="zhangsan",2001,95,b="Shangxian",2002,90, c="Anhua",2003,95,d,*p- d=a; ifstrcmp(a.nalne,b.name)>0) d=b; if(strcmp(c.name,d.name)>0) d=c; printf("%ld%s/n",d.sno,p >name;
填空题以下程序中,fun函数的功能足求3行4列二维数组每行尢素中的最大值。请填空。
void fun(int,int,int(*)[4],int*);
main()
{int a[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;
fun(3,4,a,b);
for(i=0;j<3;i++)printf("%4d",b[i]);
printf("/n");
}
void fun(int m,int n,int ar[][4],int*br)
{int i,j,x;
for(i=0;i<m;i++)
{x=ar[i][0];
for(j=0;j<n;j++)
if(______)
x=ar[i][j];
br[i]=x;
}
}
填空题设Y是int型变量,请写出判断Y为奇数的关系表达 【7】 。
填空题在链表的运算过程中,能够使空表与非空表的运算统一的结构是______。
填空题以下程序运行后的输出结果是______。
#include<stdio.h>
main()
{ int x=20;
printf("%d",0<x<20);
printf("%d/n",0<x&&x<20);}
填空题请补充函数proc(),该函数的功能是将字符串str中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入“How Are You?”,则输出“how are you?”。 注意:部分源程序已给出。 请勿改动主函数main和其他函数中的任何内容。 试题程序: #include<stdio.h> #include<string.h> #include<conio.h> char *proc(char str[]) int i; for(i=0; str[i]; i++) if((str[i]>='A') return( (3) ); void main() char str[81]; printf("/nPlease enter a string: "); gets(str); printf("/nThe result string is: /n%s", proc(str));
填空题请补充函数fun(),该函数的功能是:分类统计一个字符串中元音字母和其他字符的个数(不区分大小写)。
例如,输入aeiouAOUpqrt,结果为A∶2 E∶1 I∶1 O∶2 U∶2 Other∶4。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#define N 100
void fun(char *str,int bb[ ])
{
char *p=str;
int i=0;
for(i=0;i<6;i++)
{{U}}【1】 {{/U}};
while(*p)
{
switch(*p)
{
case 'A':
case 'a':bb[0]++;break;
case 'E':
case 'e':bb[1]++;break;
case 'I':
case 'i':bb[2]++;break;
case 'O':
case 'o':bb[3]++;break;
case 'U':
case 'u':bb[4]++;break;
default:{{U}} 【2】 {{/U}};
}
{{U}}【3】 {{/U}}
}
}
main()
{
char str[N],ss[6]="AEIOU";
int i;
int bb[6];
clrscr();
printf("Input a string:/n");
gets(str);
printf("the string is:/n");
puts(str);
fun(str,bb);
for(i=0;i<5;i++)
printf("/n%c:%d",ss[i],bb[i]);
printf("/nother:%d",bb[i]);
}
填空题程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun()的功能是:从文件中找出指定学号的学生数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中学生的数据,即用该学生的新数据覆盖源数据,其他学生数据指定不变;若找不到,则不做任何操作。
请在标号处填入正确的内容,使程序得出正确的结果。 注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构。
试题程序 #include
<stdio.h> #define N 5 typedef struct student
{ long sno; char name[10];
float score[3]; } STU; void fun(char
*filename, long sno) { FILE *fp; STU n; int
i; fp=fopen(filename, "rb+");
while(!feof(______)) { fread( if(n.sno ______ sno) break; }
if(!feof(fp)) { for(i=0; i<3; i++)
n.score[i]+=3; fseek (______, -(long) sizeof(STU),
SEEK_CUR); fwrite(
} fclose(fp); }
main() { STU t[N]={{10001, "MaChao", 91, 92, 77}, {10002,
"CaoKai", 75, 60, 88},{10003, "LiSi", 85, 70, 78}, {10004, "FangFang", 90, 82,
87}, {10005, "ZhangSan", 95, 80, 88}}, ss[N]; int i, j; FILE
*fp; fp=fopen("student.dat", "wb"); fwrite(t,
sizeof(STU), N, fp); fclose(fp); printf("/nThe
original data:/n"); fp=fopen("student.dat", "rb");
fread(ss, sizeof(STU), N, fp); fclose(fp);
for(j=0; j<m; j++) { printf("/nNo: % ld Name: %
-8sScores:", ss[j].sno, ss[j].name); for(i=0; i<3; i++)
printf("% 6.2f", ss[j].score[i]); printf("/n");
} fun("student.dat", 10003);
fp=fopen("student.dat", "rb"); fread(ss, sizeof(STU), N, fp);
fclose(fP); printf("/nThe data after modifing:/n");
for(j=0; j<N; j++) { printf("/nNo: % ld Name: %
-8sScores:", ss[j].sno, ss[j].name); for(i=0; i<3; i++)
printf("% 6.2f", ss[j].score[i]); printf("/n");
} }
填空题以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。 main() int i ,a[20], sum, count ; sum=count=0; for(i=0; i<20; i++) scanf("%d", (16) ); for(i=0; i<20; i++) if(a[i]>0) count++; sum+= (17) ; printf("sum=%d,count=%d/n",sum,count);
填空题请完成函数fun( ),它的功能是:求Fibonacc数列中小于t的最大的一个数,结果由函数 0返回。Fibonacc数列F(n)定义为: F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2) 例如:t=1000时,函数为987。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在下划线上填入所需的内容。 #include<conio.h> #include<stdio.h> #include<math.h> in fun(int t) int a=l,b=1,c=0,i; do 1 ; a=b; b=C; while( 2 ); c= 3 ; return C; main() int n; clrscr(); n=1000; printf("n=%d,f=%d/n",n,fun(n)); }