练习6-1

/*
求两个整数中的最小值
*/ #include <stdio.h> /*--- 返回三个整数中的最小值 ---*/
int min2(int a, int b)
{
int min = a; if (b < min) min = b; return min;
} int main(void)
{
int a, b, c; puts("请输入两个整数。");
printf("整数a:"); scanf("%d", &a);
printf("整数b:"); scanf("%d", &b); printf("最小值是%d。\n", min2(a, b)); return ;
}

练习6-2

/*
求三个整数中的最小值
*/ #include <stdio.h> /*--- 返回三个整数中的最小值 ---*/
int min3(int a, int b, int c)
{
int min = a; if (b < min) min = b;
if (c < min) min = c;
return min;
} int main(void)
{
int a, b, c; puts("请输入三个整数。");
printf("整数a:"); scanf("%d", &a);
printf("整数b:"); scanf("%d", &b);
printf("整数c:"); scanf("%d", &c); printf("最小值是%d。\n", min3(a, b, c)); return ;
}

练习6-3

#include <stdio.h>

int cub(int x) {
return x * x * x; //求一个数的立方
} int main(void) {
int x; printf("请输入一个数:");
scanf("%d", &x);
printf("它的立方是%d",cub(x)); return ;
}

练习6-4

#include <stdio.h>

int sqr(int x) {
return x * x ; //求一个数的平方
} int main(void) {
int x; printf("请输入一个数:");
scanf("%d", &x);
printf("它的四次幂是%d", sqr(sqr(x))); return ;
}

练习6-5

#include <stdio.h>

int sumup(int n) {
int sum = ;
while (n-->)
{
sum += n; }
return sum;
} int main(void) {
int x; printf("请输入一个数:");
scanf("%d", &x);
printf("从1到%d之间所有整数的和是%d",x, sumup(x)); return ;
}

练习6-6

#include <stdio.h>

void alert(int n) {
while (n-- > )
{
putchar('\a');
}
} int main() {
int x;
printf("请输入要发出响铃的次数:");
scanf("%d", &x);
alert (x);
}

练习6-7

#include <stdio.h>

void hello(void) {
puts("你好。");
}
int main() {
hello();
}

练习6-8

/*
计算英语最低分
*/ #include <stdio.h> #define NUMBER 5 /* 学生人数 */ /*--- 返回元素个数为n的数组v中的最小值 ---*/
int min_of(const int v[], int n)
{
int i;
int min = v[]; for (i = ; i < n; i++)
if (v[i] < min)
min = v[i];
return min;
} int main(void)
{
int i;
int eng[NUMBER]; int min_e; printf("请输入%d名学生的分数。\n", NUMBER);
for (i = ; i < NUMBER; i++) {
printf("[%d]英语:", i + ); scanf("%d", &eng[i]); }
min_e = min_of(eng, NUMBER); /* 英语的最低分 */ printf("英语的最低分=%d\n", min_e); return ;
}

练习6-9

/*
对数组的全部元素进行倒序排列
*/ #include <stdio.h>
#define number 7 void rev_intary(int v[], int n)
{ int i;
for (i = ; i < n/ - ; i++) { /* 对数组元素进行倒序排列 */
int temp = v[i];
v[i] = v[n - - i];
v[n- - i] = temp;
}
} int main() {
int i;
int x[number];
for (i = ; i < number; i++) { /* 输入元素的值 */
printf("x[%d] : ", i);
scanf("%d", &x[i]);
} rev_intary(x, number); puts("倒序排列了。");
for (i = ; i < number; i++) /* 显示元素的值 */
printf("x[%d] = %d\n", i, x[i]); return ; }

练习6-10

/*
对数组的全部元素进行倒序排列
*/ #include <stdio.h>
#define number 7 void intary_rcpy(int v1[], const int v2[], int n)
{ int i;
for (i = ; i < n; i++) {
v1[i] = v2[n - i - ];
} } int main() {
int i;
int x[number];
int y[number];
for (i = ; i < number; i++) { /* 输入元素的值 */
printf("x[%d] : ", i);
scanf("%d", &x[i]);
} intary_rcpy(y, x, number); puts("倒序排列了。");
for (i = ; i < number; i++) /* 显示元素的值 */
printf("y[%d] = %d\n", i, y[i]); return ; }

练习6-11

#include <stdio.h>
#define number 5 int search_idx(const int v[], int idx[], int key, int n) { int i;
int x = ;
for (i = ; i < n; i++) {
if (v[i] == key)
x++;
idx[x] = v[i];
}
return x;
} int main() {
int v[number];
int y[number + ]; int i;
int key;
printf("要查找的值是:");
scanf("%d", &key);
for (i = ; i < number; i++) {
printf("v[%d]=", i);
scanf("%d", &v[i]);
}
int x = search_idx(v, y, key, number);
printf("有%d个相同的元素", x);
}

练习6-12

#include<stdio.h>

void mat_mul(const int a[][], const int b[][], int c[][]) {

    int i, j, k;

    for (i = ; i < ; i++) {    //计算矩阵c的值
for (j = ; j < ; j++) {
c[i][j] = ;
for (k = ; k < ; k++) {
c[i][j] += a[i][k] * b[k][j]; } }
}
} int main()
{
int a[][];
int b[][];
int i, j, k, x, y, c[][];
printf("输入4*3 个数 以空格隔开:\n");
for (i = ; i < ; i++)
for (k = ; k < ; k++)
scanf("%d", &a[i][k]);
printf("输入3*4 个数 以空格隔开:\n");
for (i = ; i < ; i++)
for (k = ; k < ; k++)
scanf("%d", &b[i][k]); mat_mul(a, b, c); for (x = ; x < ; x++)
{
for (y = ; y < ; y++)
printf("%d\t", c[x][y]);
printf("\n");
}
return ;
}

练习6-13

/*
求4名学生在两次考试中3课程的总分并显示(函数版)
*/ #include <stdio.h> /*--- 将4行3列矩阵a和b的和存储在c中 ---*/
void mat_add(const int a[][], const int b[][], int c[][][])
{
int x, y, z; for (x = ; x < ; x++)
for (y = ; y < ; y++)
for (z = ; z < ; z++) {
c[x][y][z] = a[y][z] + b[y][z];
}
} /*--- 显示4行3列矩阵m ---*/
void mat_print(const int m[][])
{
int i, j; for (i = ; i < ; i++) {
for (j = ; j < ; j++)
printf("%4d", m[i][j]);
putchar('\n');
}
} int main(void)
{
int tensu1[][] = { {, , }, {, , }, {, , }, {, , } };
int tensu2[][] = { {, , }, {, , }, {, , }, {, , } };
int sum[][][]; /* 总分 */ mat_add(tensu1, tensu2, sum); /* 求两次考试中成绩的总和 */ puts("第一次考试的分数"); mat_print(tensu1); /* 显示第一次考试的分数 */
puts("第二次考试的分数"); mat_print(tensu2); /* 显示第二次考试的分数 */
puts("总分"); mat_print(sum); /* 显示总分 */ return ;
}

练习6-14

#include <stdio.h>
#define number 4 int main() {
int i;
static double x[number];
for (i = ; i < number; i++) {
printf("v[%d]=%.1f", i, x[i]);
putchar('\n');
}
}

练习6-15

#include <stdio.h>

void put_count() {
static i = ;
printf("put-count:第%d次", i++);
putchar('\n'); } int main() {
int i;
for (i = ; i < ; i++) {
put_count();
}
}

明解C语言 入门篇 第六章答案的更多相关文章

  1. 明解C语言 入门篇 第五章答案

    练习5-1 /* 依次把1.2.3.4.5 赋值给数组的每个元素并显示(使用for语句) */ #include <stdio.h> int main(void) { int i; ]; ...

  2. 明解C语言 入门篇 第四章答案

    练习4-1 #include <stdio.h> int main(void) { int no; int x; do{ printf("请输入一个整数:"); sca ...

  3. 明解C语言 入门篇 第三章答案

    练习3-1 #include <stdio.h> int main() { int x; int y; puts("请输入两个整数."); printf("整 ...

  4. 明解C语言 入门篇 第十三章答案

    练习13-1 /* 打开与关闭文件 */ #include <stdio.h> int main(void) { ]; FILE* fp; printf("请输入你要打开的文件& ...

  5. 明解C语言 入门篇 第十一章答案

    练习11-1 /* 用指针实现的字符串的改写 */ #include <stdio.h> int main(void) { "; printf("p = \" ...

  6. 明解C语言 入门篇 第七章答案

    练习7-1 #include <stdio.h> int main() { int n; printf(,, ); //此行显示结果为 4 3 6 因为1的字节就是为4,而-1的字节也是4 ...

  7. 明解C语言 中级篇 第四章答案

    练习4-1 /* 珠玑妙算 */ #include <time.h> #include <ctype.h> #include <stdio.h> #include ...

  8. 明解C语言 中级篇 第三章答案

    练习3-1 /* 猜拳游戏(其四:分割函数/显示成绩)*/ #include <time.h> #include <stdio.h> #include <stdlib.h ...

  9. 明解C语言 入门篇 第二章答案

    练习2-1 #include <stdio.h> int main() { int x; int y; int percent; puts("请输入两个整数"); pr ...

随机推荐

  1. [笔记] NuGet Warning NU5100 处理

    问题描述 在将 .NET 项目编译成 NUGET 包时,如果项目引用了其它 dll 文件,则可能出现这个警告,如果不处理,Nuget 包中可能无法正确引用所添加的 dll . 处理方式 在项目 .cs ...

  2. Python破解js加密实例(有道在线翻译)

    在爬虫爬取网站的时候,经常遇到一些反爬虫技术,比如: 加cookie,身份验证UserAgent 图形验证,还有很难破解的滑动验证 js签名验证,对传输数据进行加密处理 对于js加密经过加密传输的就是 ...

  3. java中设置session过期时间

    Web容器 apache-tomcat-8.0.26\conf\web.xml中设置 <session-config> <!-- 时间单位为分钟 --> <session ...

  4. JavaScript 数据类型转换表

    下表显示了将不同的JavaScript值转换为Number,String和Boolean的结果: 原始值 转换为Number 转换为String 转换为Boolean false 0 "fa ...

  5. 前端开发CSS3——文本样式和盒子及样式

    博主废话少说,直接介绍css常用的属性和属性值:属性和值只需过一遍,页面的结构还是需要布局,布局的只是后期会更新的. 提供一些图标的网站:font-awesome:     http://fontaw ...

  6. Redis入门学习(一):简介

    Redis是一个开源的.高性能的.基于键值对的缓存与存储系统,通过提供多种键值数据类型来适应不同场景下的缓存与存储需求.同时Redis的诸多高层级功能使其可以胜任消息队列.任务队列等不同的角色. 20 ...

  7. 处理 JS中 undefined 的 7 个技巧

    摘要: JS的大部分报错都是undefined... 作者:前端小智 原文:处理 JS中 undefined 的 7 个技巧 Fundebug经授权转载,版权归原作者所有. 大约8年前,当原作者开始学 ...

  8. Linux-CentOS-Nginx安装

    原文转自 jerryhe326:https://www.cnblogs.com/jerrypro/p/7062101.html 一.安装准备 首先由于nginx的一些模块依赖一些lib库,所以在安装n ...

  9. python 登录并获取session,使用session新增ecshop的草稿

    ,"consignee":"冬天","email":"12345@qq.com","address" ...

  10. springboot-项目获取resources下文件的方法

    spring项目获取resources下文件的方法   最近写读取模板文件做一些后续的处理,将文件放在了项目的resources 下,发现了一个好用的读取方法:   比如上边是你需要读取的文件:  读 ...