77范文网 - 专业文章范例文档资料分享平台

C语言程序设计教程书后作业参考答案2013(4)

来源:网络收集 时间:2020-03-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

let[ch-'a']++;

for (i=0;i<26;i++)

printf(\

return 0;

}

5.编写程序输出以下杨辉三角形(要求打印出10行)。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 ??

#include #define N 10 void main() {

int i,j,k; int a[N][N]; for(i=0;i

a[i][0]=1; a[i][i]=1; }

for(i=2;i

a[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=0;i

for(j=0;j<=i;j++)

printf(\ printf(\ } }

6.编写程序输入并求一个4×4矩阵的两条对角线元素之和、四周靠边元素之和。 #include #define N 4 void main() {

int a[N][N]; int i,j;

int sum1=0; //对角线元素之和

int sum2=0; //四周靠边元素之和 printf(\请输入%d*%d矩阵:\\n\ for(i=0;i

scanf(\ printf(\产生的矩阵如下:\\n\ for(i=0;i

for(j=0;j

printf(\ printf(\ }

//计算对角线元素之和 for(i=0;i

if(i==j||i+j==N-1) sum1+=a[i][j];

printf(\两条对角线上的元素之和为:]\\n\ for(i=0;i

if(i==0||i==N-1||j==0||j==N-1) sum2+=a[i][j];

printf(\四周靠边的元素之和为:]\\n\}

练习题7参考答案

一、选择题 序号 参考答案 序号 参考答案 序号 参考答案 1 A 11 B 21 A 2 D 12 C 3 B 13 A 4 D 14 C 5 C 15 C 6 A 16 C 7 D 17 C 8 A 18 D 9 A 19 A 10 B 20 C 二、填空题

1.下列程序的输出结果是 5 6 。 2.下面程序的运行结果是 10 。 3.下面程序的运行结果是 A+B=9 。 4.以下程序的输出结果是 246 。 三、程序设计题

1.编写程序在主函数中键盘输入两个整数,通过调用两个函数分别求出两个整数的最大公约数和最小公倍数,并输出结果。

#include

int gcd(int m,int n) //最大公约数函数定义 {

int r; r=m%n;

while(r!=0) //先判断后执行,有可能一次也不执行循环体。 {

m=n; n=r; r=m%n; }

return n; }

//最小公倍数函数定义

int lcm(int m,int n) //最大公约数在前面已定义,调用前可不作函数声明 {

return m*n/gcd(m,n); }

int main() {

int a,b;

int gcd(int m,int n); //函数声明 int lcm(int m,int n); //函数声明 printf(\输入两个数:\ scanf(\

printf(\最大公约数:%d\\n\ printf(\最小公倍数:%d\\n\ return 0; }

2.编写程序在主函数输入一个整数,通过调用一个判素数的函数求素数,并输出是否是素数的信息。

#include

int prime(int x); //在函数外部声明,作用域为整个文件 int main() {

int m;

while(1) //可实现多次判断 {

printf(\请输入数字(输入0退出):\ scanf(\

if (m == 0) return 0; if (prime(m))

printf(\是素数!\ else

printf(\不是素数!\ }

return 0;

}

int prime(int x) //不同方法,同一算法思想 {

int n,flag=1; for(n=2;n

flag=0; break; }

return flag; }

3.编写程序在主函数中输入一个给定的3×3的二维整型数组,通过调用一个用函数将这个二维整型数组进行转置,最后输出转置后的二维数组。 #include //用二个不同数组存放 int b[3][3]; void main() {

void convert(int a[3][3]); int i,j,a[3][3]; for(i=0;i<3;i++)

for(j=0;j<3;j++)

scanf(\

convert(a);

for(i=0;i<3;i++) {

for(j=0;j<3;j++)

printf(\ printf(\ }

getchar(); }

void convert(int a[3][3]) { int i,j,t;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

b[j][i]=a[i][j];

}

10.编写程序用函数递归的方法求n阶勒让德多项式的值,递归公式为:

?1 n?0?pn(x)??x n?1

?((2n?1)?x?p(x)?(n?1)*p(x))/n n?1n?1n?2?#include

#include

float p(int n,float x) {

if (n==0) return 1; else if (n==1) return x; else

return ((2 * n - 1) * x - p(n - 1 , x) - (n - 1) * p(n - 2, x)) / n; }

int main() {

int n,x; float result;

printf(\ scanf(\ result = p(n,x);

printf(\ return 0; }

练习题8参考答案

一、选择题

序号 参考答案 1 C 2 C 3 B 4 C 5 B 二、填空题

1. C 提供的预处理功能主要有__条件编译___、_宏定义____、__文件包含_等三种。 2. C 规定预处理命令必须以 # 开头;定义宏的关键字是_define______。 3. 在预编译时将宏名替换成___字符串_______的过程称为宏展开。 4. 预处理命令不是 C 语句,不必在行末加____分号_____。

5. 以头文件 stdio.h 为例,文件包含的两种格式为:______#include_____,_______#include “stdio.h”____。

6.下面程序的运行结果为 12 。 7.以下程序的输出结果是 28 。 8.以下程序输出的结果是 c=0 。 三、程序设计题

1. 定义一个带参的宏,求两个整数的余数。通过宏调用,输出求得的结果。 #include

#define R(m,n) (m)%(n) void main() { int m,n;

printf(\ scanf(\

printf(\

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库C语言程序设计教程书后作业参考答案2013(4)在线全文阅读。

C语言程序设计教程书后作业参考答案2013(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/907483.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: