c语言答案(4)

2019-08-03 12:39

if (m < 2 || m % 2 == 0) return 0;

for (i = 3; i < m; i = i + 2) if (m % i == 0) return 0; return 1; }

2.输入若干个正整数,判断每个数从高位到低位各位数字是否按值从小到大排列,请根据题意,将程序补充完整。 #include int main(void) { int n;

scanf(\

while (n > 0) { if(fun1(n))

printf(\中各位数字按从小到大排列\\n\scanf(\} }

{ int k; while(m)

if( m / 10 % 10 > k) return 0;

return 1; }

3.下列函数输出一行字符:先输出kb个空格,再输出n个指定字符(由实参指定)。请根据题意,将程序补充完整。 #include { int i; ) printf(“%c”, zf); }

三、程序设计题

1.输入x,计算并输出下列分段函数 f(x) 的值。要求定义和调用函数sign(x) 实现该分段函数。 x > 0 x = 0 -1 x < 0 解答:

#include int main(void) {

int sign(int x); int x, y;

scanf(\

y = sign(x);

printf(\return 0; }

int sign(int x) {

int y;

if(x>0) y=1;

else if (x==0) y=0; else y=-1;

return y; }

2.输入一批正整数(以零或负数为结束标志),求其中的奇数和。要求定义和调用函数even(n) 判断数的奇偶性,当n为偶数时返回1,否则返回0。 解答:

#include int even(int n); int main(void) {

int n, sum;

scanf(\sum = 0;

while(n > 0){

if(even(n) == 0) sum = sum + n; scanf(\}

printf(\

第45/106页

return 0; }

int even(int n) {

int y;

if (n % 2 == 0) y = 1; else y = 0;

return y;

}

3.输入精度e,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e。要求定义和调用函数funcos(e, x)求余弦函数的近似值。 x0x2x4x6

cos(x)???????? 0!2!4!6! 解答:

#include \#include \

double funcos(double e, double x); int main(void)

{

double e, sum, x;

scanf(\sum = funcos(e, x);

printf(\return 0; }

double funcos(double e, double x) {

int flag, i;

double item, sum, tmp, power; flag = 1; power = 1; tmp = 1; i = 0; item = 1; sum = 0;

while(fabs(item) >= e){ item = flag * power / tmp; sum = sum + item;

power = power * x * x;

tmp = tmp * (i+1) * (i+2); flag = -flag; i = i + 2; }

return sum;

第46/106页

}

4.输入两个正整数m和n(1<=m, n<=500),统计并输出m 和n之间的素数的个数以及这些素数的和。要求定义并调用函数prime(m)判断m是否为素数。 解答:

#include \#include \int main(void) {

int count, i, m, n, sum; int prime(int m);

scanf(\

count = sum = 0;

for(i = m; i <= n; i++) if(prime(i) != 0){ count++;

sum = sum + i; }

printf(\return 0; }

int prime(int m) {

int k, i;

if(m == 1) return 0; k = sqrt(m);

for(i = 2; i <= k; i++) if(m % i == 0) return 0; return 1; } 5.输入两个正整数a和n, 求a+aa+aaa+aa?a(n个a)之和。要求定义并调用函数fn(a,n),它的功能是返回aa?a(n个a)。例如,fn(3,2)的返回值是33。 解答:

#include int main(void) {

int a, i, n; long sn;

第47/106页

long fn(int a, int n); scanf(\sn = 0;

for(i = 1; i <= n; i++) sn = sn + fn(a, i); printf(\return 0; }

long fn(int a, int n) {

int i;

long tn; tn = 0;

for(i = 1; i <= n; i++) tn = 10 * tn + a; return tn; }

6.读入一个整数,统计并输出该数中2的个数。要求定义并调用函数countdigit(number,digit),它的功能是统计整数number中数字digit的个数。例如,countdigit(12292,2)的返回值是3。

解答:

#include \int main(void) {

int count, digit, in;

int countdigit(int number, int digit); scanf(\count = countdigit(in, digit);

printf(\return 0;

}

int countdigit(int number, int digit) {

int count;

if(number < 0) number = -number; count = 0; do{

if(number % 10 == digit) count++;


c语言答案(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2011华师汉硕语言学基础

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: