【程序填空】
---------------------------------------------------------
功能:从键盘输入若干行字符,输入后把他们存储到一磁盘文件 中。在从该文件中读出这些数据,将其中的小写字母转换 成大写字母后在屏幕上输出。
-------------------------------------------------------*/ #include \#define N 100
main() {
FILE *fp;
char c,*p,s[N][20]; int i,n;
printf(\
/***********SPACE***********/ if(n<1【?】n>N) exit(0); printf(\ for(i=0;i /***********SPACE***********/ fp=fopen(\【?】); for(i=0;i p=s[i]; /***********SPACE***********/ while(*p!='\\0') if(!ferror(fp)) fputc(【?】,fp); } fclose(fp); printf(\ /***********SPACE***********/ fp=fopen(\【?】); while((c=fgetc(fp))!=EOF) { if(c>'a'&&c<='z')c-+32; putchar(c); } printf(\ fclose(fp); } 答案: 1). || 2). \ 3). *p++ 4). \11 第14题 (10.0分) 题号:469 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:用递归法将一个整数n转换成字符串,例如输入483,应输出 对应的字符串\。n的位数不确定,可以是任意位数的整 数。 -------------------------------------------------------*/ #include void convert(int n) { int i; /***********SPACE***********/ if((【?】)!=0) convert(i); /***********SPACE***********/ putchar(n+【?】); } main() { int number; printf(\ scanf(\ printf(\ if(number<0) { putchar('-'); /***********SPACE***********/ 【?】; } convert(number); } 答案: 1). i=n/10 2). '0' 3). number=-number 第15题 (10.0分) 题号:14 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:输出100到1000之间的各位数字之和能被15整除的所有数, 输出时每10个一行。 -------------------------------------------------------*/ main() 12 { int m,n,k,i=0; for(m=100;m<=1000;m++) { /***********SPACE***********/ 【?】; n=m; do { /***********SPACE***********/ k=k+【?】 ; n=n/10; } /***********SPACE***********/ 【?】; if (k==0) { printf(\ /***********SPACE***********/ if(i==0) 【?】; } } } 答案:1). k=0 2). n 或 n-n/10*10 或 n-10*(n/10) 3). while(n>0) 或 while(0 第16题 (10.0分) 题号:397 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙 队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比 赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出 三队赛手的名单。 -------------------------------------------------------*/ main() { char i,j,k;/*i是a的对手,j是b的对手,k是c的对手*/ for(i='x';i<='z';i++) for(j='x';j<='z';j++) { /***********SPACE***********/ if(【?】) /***********SPACE***********/ 13 for(k='x';【?】;k++) { /***********SPACE***********/ if(【?】) { /***********SPACE***********/ if(i!='x'&&k!=【?】) printf(\ } } } } 答案:1). i!=j 或 i != j 2). k<='z' 或 'z'>=k 3). i!=k&&j!=k 或 i != k && j != k 第17题 (10.0分) 题号:447 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:已知一个数列,它的头两项分别是0和1,从第三项开始以 后的每项都是其前两项之和。编程打印此数,直到某项的 值超过200为止。 -------------------------------------------------------*/ main() { int i,f1=0,f2=1; /***********SPACE***********/ for(【?】;;i++) { printf(\ /***********SPACE***********/ if(f1>【?】) break; printf(\ if(f2>200) break; if(i%2==0) printf(\ f1+=f2; /***********SPACE***********/ f2+=【?】; } printf(\} 答案: 1). i=1 2). 200 3). f1 第18题 (10.0分) 题号:486 /*------------------------------------------------------- 4). 'z' 14 【程序填空】 --------------------------------------------------------- 功能:删除字符串中的数字字符。 例如:输入字符串:48CTYP9E6,则输出:CTYPE。 -------------------------------------------------------*/ #include /***********SPACE***********/ void fun (【?】) { char *p=s; while(*p) if((*p>='0')&&(*p<='9')) p++; /***********SPACE***********/ else *s++=【?】; /***********SPACE***********/ 【?】; } main( ) { char item[100] ; printf(\ gets(item); fun(item); printf(\} 答案:1). char *s 或 char s[] 2). *p++ 3). *s='\\0' 或 *s=0 第19题 (10.0分) 题号:448 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:已知X、Y、Z分别表示0~9中不同的数字,编程求出使算式 XXXX+YYYY+ZZZZ=YXXXZ成立时X、Y、Z的值,并要求打印该 算式。 -------------------------------------------------------*/ main() { int x,y,z; /***********SPACE***********/ for(x=0;【?】;x++) for(y=0;y<10;y++) { if(y==x) continue; for(z=0;z<10;z++) 15