1、程序设计CC语言程序设计练习题-程序设计第2题(练习题所在文件夹:486)/*-【程序设计】-题目:有一个33的数组,求其右上三角(含主对角线)的元素 之和。 程序的运行结果为26。-注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。-*/#include#define N 3 int fun(int aNN) int i,j,s;/*Program*/* End */ return (s) ; main( ) int aNN=1,2,3,4,5,6,7,8,9,s; s=fun(a); printf(%dn,s); 参考
2、答案: s=0; for(i=0;iN;i+) for(j=0;jN;j+) if(i=j) s+=aij;第3题(练习题所在文件夹:341)!?/*-【程序设计】-题目:编写程序,实现矩阵(3行3列)的转置 (即行列互换)例如,输入下面的矩阵: 100 200 300 400 500 600 700 800 900 程序输出: 100 400 700 200 500 800 300 600 900-注意:部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数fun的花 括号中填入所编写的若干语句。-*/#include stdio.hint fun(int array3
3、3)/*Program*/* End */main()int i,j;int array33=100,200,300,400,500,600,700,800,900;clrscr() ;for (i=0; i 3; i+) for (j=0; j 3; j+)printf(%7d,arrayij);printf(n);fun(array);printf(Converted array:n);for (i=0; i 3; i+) for (j=0; j 3; j+)printf(%7d,arrayij);printf(n);getch();参考答案:-int i,j,t;for(i=0; i 3
4、; i+)for(j=0; j i; j+) t=arrayij;arrayij=arrayji;arrayji=t; -第4题(练习题所在文件夹:489)!/*-【程序设计】-题目:在主函数中通过键盘输入年份,调用函数fun判断该年 是否为闰年。-注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。-*/#includefun(int year)int flag;/*Program*/* End */main() int year,np; printf(Pleae input a year:);scanf(%d,&year
5、); np=fun(year); if (!np) printf(%d is not a leap yearn,year); else printf(%d is a leap yearn,year);参考答案:if (year%400=0) flag=1;else if (year%4!=0) flag=0;else if (year%100!=0) flag=1;else flag=0;return(flag);第6题(练习题所在文件夹:504)/*-【程序设计】-题目: 编写函数fun,函数的功能是:计算并输出给定整数n的 所有因子之和(包括1与自身)。规定n的值不大于1000。 例如:n
6、的值为855时,应输出1560。-注意:部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数fun的花 括号中填入所编写的若干语句。-*/#include stdio.hint fun(int n)/*Program*/* End */main()printf(s=%dn,fun(855);参考答案:int s=0,i; for(i=1;i=n;i+) if(n%i=0)s=s+i; return s;第11题(练习题所在文件夹:525)!?/*-【程序设计】-题目:编写函数fun,它的功能是:求小于等于形参n同时 能被3与7整除的所有自然数之和的平方根,并作为 函数值
7、返回。 例如:输入100,输出14.491377-注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。-*/#include stdio.h#include math.hdouble fun(int n)/*Program*/* End */main() int n; double m; printf(输入一个数:); scanf(%d,&n); m=fun(n); printf(和的平方根为:%lfn,m);参考答案: double sum=0.0; int i; for(i=1; i=n; i+) if(i % 3=0)
8、 & (i % 7=0) sum+=i; return sqrt(sum) ;第13题(练习题所在文件夹:410)/*-【程序设计】-题目:编写函数fun求sum=d+dd+ddd+ +dd.d(n个d), 其中d为1-9的数字。 例如3+33+333+3333+33333(此时d=3,n=5) ,d和n在主函数中输入。-注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数fun的花括号中填入所编写的若干语句。-*/#include stdio.hmain() int d,n; long sum,fun(); printf(d=); scanf(%d,&d);
9、printf(n=); scanf(%d,&n); sum=fun(d,n); printf(sum=%ldn,sum); getchar ();long int fun(int d,int n)/*Program*/* End */参考答案:-long int s=0,t=0; int i; for(i=1;i=0&si=9) k+; return k;第16题(练习题所在文件夹:487)?/*-【程序设计】-题目:产生15个20,80上的随机整数,用顺序法(比较法) 按从小到大排序后输出。-注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填
10、 入所编写的若干语句。-*/#include #includevoid fun(int a, int n)int i,j,t;/*Program*/* End */ #define N 15 main() int i,aN; for(i=0;iN;i+) ai=random(61)+20; fun(a,N); for(i=0;iN;i+) printf(%5d,ai); printf(n); 参考答案: for(i=0;in-1;i+) for(j=i+1;jaj) t=ai; ai=aj; aj=t; 第18题(练习题所在文件夹:42)?/*-【程序设计】-题目:编写函数fun,函数的功能是
11、:从字符串s中删除 指定的字符c。-注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。-*/#include stdio.hfun(char s,char c)int i,k=0;/*Program*/* End */main()static char str=turbo c and borland c+;char c=a;fun(str,c);printf(str=%sn,str);参考答案:- for(i=0;si!=0;i+) if(si!=c) sk+=si; sk=0;?-第19题(练习题所在文件夹:505)!/
12、*-【程序设计】-题目: 编写函数fun,函数的功能是:求一个整数的各位数字的平方和。 若n=1234,则运行结果k=30。-注意:部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数fun的花 括号中填入所编写的若干语句。-*/#include stdio.hint fun(int n)/*Program*/* End */main()int k;k=fun(1234);printf(k=%dn,k);参考答案: int d,k,s=0; while (n0) d=n%10; s+=d*d; n/=10; return s;第22题(练习题所在文件夹:325)/*-【
13、程序设计】-题目:编写函数fun其功能是:判断一个整数w的各位 数字平方之和能否被5整除,可以被5整除则返 回1,否则返回0。-注意:部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数fun的花 括号中填入所编写的若干语句。-*/#include stdio.h#includeconio.hint fun(int w)/*Program*/* End */ main() int m; printf(Enter m: ); scanf(%d, &m); printf(nThe result is %dn, fun(m); getch(); 参考答案:-int k,s=0
14、; do s=s+(w%10)*(w%10); w=w/10; while(w!=0); if(s%5=0)k=1; else k=0; return(k);-第23题(练习题所在文件夹:506)/*-【程序设计】-题目:编写函数fun,函数的功能是:求一组数中大于平均值的数之和。 例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为190。-注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。-*/#include stdio.hint fun(int a,int n)/*Program*/*
15、End */main()int a10=1,3,6,9,4,23,35,67,12,88;int y;y=fun(a,10);printf(y=%dn,y);getch();参考答案: int i,sum=0; float ave=0; for(i=0;in;i+) ave+=ai; ave=ave/n; for(i=0;iave) sum+=ai; return sum;第24题(练习题所在文件夹:317)/*-【程序设计】-题目:从键盘为一维整型数组输入10个整数, 调用fun函数找出其中最小的数,并在 main函数中输出。 请编写fun函数。-注意:部分源程序给出如下。请勿改动主函数ma
16、in 和其它函数中的任何内容,仅在函数fun的花 括号中填入所编写的若干语句。-*/#include stdio.hint fun(int x,int n)/*Program*/* End */main() int a10,i,min; for(i=0;i10;i+) scanf(%d,&ai); for(i=0;i10;i+) printf(%3d,ai); printf(n); min=fun(a,10); printf(%dn,min); getch();参考答案:- int min,i;min=x0;for(i=1;in;i+)if(ximin) min=xi;return min;-第31题(练习题所在文件夹:22)/*-【程序设计】-题目:从键盘为一维整
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1