C语言编程改错完善

上传人:汽*** 文档编号:469403813 上传时间:2022-10-14 格式:DOC 页数:7 大小:24.51KB
返回 下载 相关 举报
C语言编程改错完善_第1页
第1页 / 共7页
C语言编程改错完善_第2页
第2页 / 共7页
C语言编程改错完善_第3页
第3页 / 共7页
C语言编程改错完善_第4页
第4页 / 共7页
C语言编程改错完善_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《C语言编程改错完善》由会员分享,可在线阅读,更多相关《C语言编程改错完善(7页珍藏版)》请在金锄头文库上搜索。

1、程序设计1./*-【程序设计】-功能:能计算从1开始到n的自然数的和,n由键盘输入, 并在main()函数中输出。-*/#include stdio.h int fun(int n) /*Begin*/ /* End */ main() int m; void TestFunc(); printf(Enter m: ); scanf(%d, &m); printf(nThe result is %dn, fun(m); TestFunc(); void TestFunc() FILE *IN,*OUT; int t; int o; int c; IN=fopen(in.dat,r); if(I

2、N=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(c=1;c=5;c+) fscanf(IN,%d,&t); o=fun(t); fprintf(OUT,%dn,o); fclose(IN); fclose(OUT);2. /*-【程序设计】-功能:调用函数fun判断一个三位数是否水仙花数。 在main函数中从键盘输入一个三位数,并输 出判断结果。请编写fun函数。说明:所谓水仙花数是指一3位数,其各位数字立方和 等于该数本身。例如:153是一个水仙

3、花数,因为153=1+125+27。-*/#include stdio.h int fun(int n) /*Begin*/ /* End */ TestFunc() FILE *IN,*OUT; int iIN,i; int iOUT; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed

4、); for(i=0;i10;i+) fscanf(IN,%d,&iIN); iOUT=fun(iIN); fprintf(OUT,%dn,iOUT); fclose(IN); fclose(OUT);main() int n,flag; scanf(%d,&n); flag=fun(n); if(flag) printf(%d 是水仙花数n,n); else printf(%d 不是水仙花数n,n); TestFunc();答案1. int sum=0,i;for(i=1;i=n;i+) sum=sum+i;return(sum);2.int bw,sw,gw;bw=n/100;sw=(n-

5、bw*100)/10;gw=n%10; if(n=bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1; else return 0;程序改错1. /*- 【程序改错】-功能:有一数组内放10个整数,要求找出最小数和它的下标,然后 把它和数组中最前面的元素即第一个数对换位置.-*/#include stdio.hmain( ) int i,a10,min,k=0; printf(n please input array 10 elementsn); for(i=0;i10;i+) /*ERROR*/ scanf(%d, ai); for(i=0;i10;i+) printf

6、(%d,ai); min=a0; /*ERROR*/ for(i=3;imin) min=ai; k=i; /*ERROR*/ ak=ai; a0=min; printf(n after eschange:n); for(i=0;i10;i+) printf(%d,ai); printf(nk=%dnmin=%dn,k,min);2. /*- 【程序改错】-功能:以下程序把两个数按由大到小的顺序输出来.-*/#include stdio.h/*ERROR*/void swap( int *p1,*p2) int p; p=*p1; *p1=*p2; *p2=p;main( ) int a,b,

7、 *p,*q; printf(input a,b:); /*ERROR*/ scanf(%d%d,a,b); p=&a; q=&b; if(ab) swap(p,q); printf(a=%d,b=%dn,a,b); /*ERROR*/ printf(max=%d,min=%dn,p,q);答案1.改错1.scanf(%d,&ai);改错2.for(i=1;i10;i+)for(i=0;i10;i+)for(i=1;i=9;i+)for(i=0;i=9;i+)改错3.if(aimin)改错4.ak=a0;2.改错1.swap( int *p1,int *p2)void swap( int *p

8、1,int *p2)改错2.scanf(%d%d,&a,&b);改错3.printf(max=%d,min=%dn,*p,*q);printf(max=%d,min=%dn,a,b);程序填空1. /*-【程序填空】-题目:本程序的功能是输入一段数字后,将输出的数字颠倒输出。 请填空。-*/#include stdio.hmain() int numb,rdigit; scanf(%d,&numb); /*FILL*/ while(_) rdigit=numb%10; /*FILL*/ printf(%d,_); numb/=10; printf(n);2. /*-【程序填空】-题目:本程序用printf函数输出字符串I am student,完善程序。-*/#include stdio.hmain() int i; char *s1=I am student; /*FILL*/ for(i=0;s1i!=_;i+) /*FILL*/ printf(_, s1i); 答案1空1.numb!=0numb空2.rdigit2.空1.0空2.%c

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 文学/艺术/历史 > 人文/社科

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号