明解C语言 入门篇 第四章答案
练习4-1
#include <stdio.h> int main(void)
{
int no;
int x; do{
printf("请输入一个整数:");
scanf("%d", &no); if (no == )
puts("该整数为0。");
else if (no > )
puts("该整数为正数。");
else
puts("该整数为负数。"); printf("要重复一次吗?【yes···0/No···9】:");
scanf("%d", &x);
} while (x == ); }
练习4-2
#include <stdio.h>
int main()
{
int a;
int b;
int sum = ;
int x; puts("请输入两个整数。");
printf("整数a:"); scanf("%d", &a);
printf("整数b:"); scanf("%d", &b);
x=a; do {
sum+=x;
x--;
} while (x!=b-); printf("大于等于%d小于等于%d的所有整数的和是%d",b,a,sum); return ;
}
练习4-3
/*
从输入的整数开始倒数到0
*/ #include <stdio.h> int main(void)
{
int no; printf("请输入一个正整数:");
scanf("%d", &no); while (no >= ) {
printf("%d ", no);
no--;
}
if (no == -) {
printf("\n");
} return ;
}
练习4-4
/*
从输入的整数开始倒数到0
*/ #include <stdio.h> int main(void)
{
int no; printf("请输入一个正整数:");
scanf("%d", &no); while (no > )
printf("%d ", no--); /* no的值在显示之后递减 */
if (no == ) {
printf("\n");
} /* 换行 */ return ;
}
练习4-5
/*
递增显示从0到输入的正整数为止的各个整数
*/ #include <stdio.h> int main(void)
{
int i, no; printf("请输入一个正整数:");
scanf("%d", &no); i = ;
while (i <= no)
printf("%d ", i++); /* i的值在显示之后递增 */
if (no >= ) {
printf("\n");
} /* 换行 */ return ;
}
练习4-6
#include <stdio.h> int main(void)
{
int no;
int i; printf("请输入一个正整数:");
scanf("%d", &no); i = ;
while (i < no) {
if ((i % )==) {
printf("%d ", i);
}
i++;
} return ;
}
练习4-7
#include <stdio.h>
int main(void)
{
int n1, n2; printf("请输入一个整数:");
scanf("%d", &n1); n2 = ;
while (n2 < n1) {
printf("%d ", n2);
n2 *= ;
}
putchar('\n'); return ;
}
练习4-8
/*
输入一个整数,连续显示出该整数个*
*/ #include <stdio.h> int main(void)
{
int no; printf("正整数");
scanf("%d", &no); while (no-- > ) {
putchar('*');
}
if (no == -)
putchar('\n'); return ;
}
练习4-9
#include <stdio.h>
int main(void)
{
int no;
printf("正整数:");
scanf("%d", &no);
int i;
i = ;
while (i < no) {
if (no % )
{
printf("+");
}
else
{
printf("-");
}
no--;
} return ;
}
练习4-10
#include <stdio.h>
int main(void)
{
int no;
printf("正整数:");
scanf("%d", &no);
while (no-- > ) {
putchar('*');
putchar('\n');
}
return ;
}
练习4-11
/*
逆向显示正整数
*/ #include <stdio.h> int main(void)
{
int no; do {
printf("请输入一个正整数:");
scanf("%d", &no);
if (no <= )
puts("\a请不要输入非正整数。");
} while (no <= );
int x = no; printf("%d逆向显示的结果是",x);
while (no > ) {
printf("%d",no % ); /* 显示最后一位数 */
no /= ; /* 右移一位 */
}
puts("。"); return ;
}
练习4-12
#include <stdio.h> int main(void)
{
int no;
int x;
int i;
i = ;
printf("请输入一个正整数:");
scanf("%d", &no);
x = no;
while (no>)
{
no/=;
i++; }
printf("%d的位数是%d", x,i);
return ;
}
练习4-13
#include <stdio.h> int main(void)
{
int n;
int i;
int sum;
sum = ;
printf("n的值:");
scanf("%d", &n);
for (i = ; i <= n; i++) {
sum += i;
}
printf("1到%d的和为%d", i-, sum); }
练习4-14
#include <stdio.h> int main(void)
{
int no;
int i;
printf("请输入一个整数:");
scanf("%d", &no);
for (i = ; i <=no; i++) {
printf("%d",i%); } }
练习4-15
#include <stdio.h> int main(void)
{
int begin;
int final;
int interval;
int i;
printf("开始数值(cm):");
scanf("%d", &begin);
printf("结束数值(cm):");
scanf("%d", &final);
printf("间隔数值(cm):");
scanf("%d", &interval);
int x;
x = begin; for (i = ; i <=(final - x) / interval; i++) {
printf("%dcm\t%.2fkg", begin, (begin - ) * 0.9);
putchar('\n');
begin += interval;
}
}
练习4-16
#include <stdio.h> int main(void)
{
int no;
int i;
printf("整数值:");
scanf("%d", &no);
putchar('\n');
for (i = ; i <=no; i += ) {
printf("%d ", i);
}
}
练习4-17
#include <stdio.h> int main(void)
{
int n;
printf("n的值是:");
scanf("%d",&n);
int i;
for (i = ; i <= n; i++) {
printf("%d的二次方是%d",i,i*i);
putchar('\n'); }
}
练习4-18
#include <stdio.h> int main(void)
{
int n;
printf("显示多少个*:");
scanf("%d",&n);
int i;
for (i = ; i <= n; i++) {
putchar('*');
if (i % == ) {
putchar('\n');
} }
}
练习4-19
#include <stdio.h> int main(void)
{
int i, n;
int m;
m = ; printf("整数值:");
scanf("%d", &n); for (i = ; i <= n; i++)
if (n % i == ) {
printf("%d ", i);
putchar('\n');
m++;
}
printf("约数有%d个。", m);
return ;
}
练习4-20
#include <stdio.h> int main(void)
{
int i, j;
printf(" |");
for (i = ; i < ; i++) {
printf("%3d", i);
}
putchar('\n');
for (i = ; i < ; i++) {
putchar('-');
}
putchar('\n'); for (i = ; i <= ; i++) {
printf("%d|", i);
for (j = ; j <= ; j++)
printf("%3d", i * j);
putchar('\n'); }
}
练习4-21
#include <stdio.h> int main(void)
{
int height;
int i, j;
printf("生成一个正方形\n");
printf("正方形有几层:");
scanf("%d", &height);
for (i = ; i < height; i++) { for (j = ; j < height; j++) {
putchar('*'); }
putchar('\n');
}
}
练习4-22
#include <stdio.h> int main(void)
{
int a,b;
int i, j;
int height;
int length;
printf("让我们画一个长方形\n");
printf("一边:");
scanf("%d", &a);
printf("另一边:");
scanf("%d", &b);
length = (a > b) ? a : b;
height = (a < b) ? a : b;
for (i = ; i < height; i++) { for (j = ; j < length; j++) {
putchar('*'); }
putchar('\n');
}
}
练习4-23
/*
显示直角在左上方的等腰直角三角形
*/ #include <stdio.h> int main(void)
{
int i, j, len; puts("生成直角在左上方的等腰直角三角形。");
printf("短边:");
scanf("%d", &len); for (i = len; i >= ; i--) { /* i 行(i = 1, 2, --- , len) */
for (j = ; j <= i; j++) /* 每行显示i 个'*' */
putchar('*');
putchar('\n'); /* 换行 */
} return ;
}
/*
显示直角在右上方的等腰直角三角形
*/ #include <stdio.h> int main(void)
{
int i, j, len; puts("生成直角在右上方的等腰直角三角形。");
printf("短边:");
scanf("%d", &len); for (i = len; i >=; i--) { /* i 行(i = 1, 2, --- , len) */
for (j = ; j <= len - i; j++) /* 每行显示len-i 个' ' */
putchar(' ');
for (j = ; j <= i; j++) /* 每行显示i 个'*' */
putchar('*');
putchar('\n'); /* 换行 */
} return ;
}
练习4-24
#include <stdio.h> int main(void)
{
int i, j, len; puts("让我们来画一个金字塔。");
printf("金字塔有几层:");
scanf("%d", &len); for (i = ; i <= len; i++) {
for (j = ; j<len-i; j++) {
putchar(' ');
}
for (j = ; j < ((i - ) * + ); j++)
{
putchar('*'); }
putchar('\n');
} return ;
}
练习4-25
#include <stdio.h> int main(void)
{
int i;
int j;
int len;
puts("让我们来画一个向下的金字塔");
printf("金字塔有几层:");
scanf("%d", &len);
for (i = ; i <= len; i++) {
for (j = ; j < i - ; j++)
{
putchar(' ');
}
for (j = ; j < (len - i) * + ; j++) {
printf("%d", i%);
}
for (j=; j <i-; j++)
{
putchar(' ');
}
putchar('\n'); } }
明解C语言 入门篇 第四章答案的更多相关文章
- 明解C语言 入门篇 第六章答案
练习6-1 /* 求两个整数中的最小值 */ #include <stdio.h> /*--- 返回三个整数中的最小值 ---*/ int min2(int a, int b) { int ...
- 明解C语言 入门篇 第五章答案
练习5-1 /* 依次把1.2.3.4.5 赋值给数组的每个元素并显示(使用for语句) */ #include <stdio.h> int main(void) { int i; ]; ...
- 明解C语言 入门篇 第三章答案
练习3-1 #include <stdio.h> int main() { int x; int y; puts("请输入两个整数."); printf("整 ...
- 明解C语言 中级篇 第四章答案
练习4-1 /* 珠玑妙算 */ #include <time.h> #include <ctype.h> #include <stdio.h> #include ...
- 明解C语言 入门篇 第十三章答案
练习13-1 /* 打开与关闭文件 */ #include <stdio.h> int main(void) { ]; FILE* fp; printf("请输入你要打开的文件& ...
- 明解C语言 入门篇 第十一章答案
练习11-1 /* 用指针实现的字符串的改写 */ #include <stdio.h> int main(void) { "; printf("p = \" ...
- 明解C语言 入门篇 第七章答案
练习7-1 #include <stdio.h> int main() { int n; printf(,, ); //此行显示结果为 4 3 6 因为1的字节就是为4,而-1的字节也是4 ...
- 明解C语言 中级篇 第三章答案
练习3-1 /* 猜拳游戏(其四:分割函数/显示成绩)*/ #include <time.h> #include <stdio.h> #include <stdlib.h ...
- 明解C语言 入门篇 第二章答案
练习2-1 #include <stdio.h> int main() { int x; int y; int percent; puts("请输入两个整数"); pr ...
随机推荐
- 【SQL server基础】判断数据库、表格、视图、存储过程、函数书否存在
库是否存在 if exists(select * from master..sysdatabases where name=N'库名') print 'exists' else print 'not ...
- Actor 模型中的通信模式
在 Actor 模型中所有的 Actor 之间有且只有一种通信模式,那就是 tell 的方式,也就是 fire and forget 的方式.但是在实际的开发过程中工程师们逐渐总结出了一些常用的通信模 ...
- python基础(十七)
今日主要内容 正则表达式 logging模块 一.正则表达式 (一)什么是正则表达式 正则表达式的定义: 是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个& ...
- 博客的第一天:回顾半年前的基础:SQL--基础查询+年月日格式+拼接
----------------------2019/6月份 <<必知必会>>书本练习-实践练习--------------------------- ---order by没 ...
- python爬虫添加请求头和请求主体
添加头部信息有两种方法 1.通过添加urllib.request.Request中的headers参数 #先把要用到的信息放到一个字典中 headers = {} headers['User-Agen ...
- 魔鬼在细节,理解Java并发底层之AQS实现
jdk的JUC包(java.util.concurrent)提供大量Java并发工具提供使用,基本由Doug Lea编写,很多地方值得学习和借鉴,是进阶升级必经之路 本文从JUC包中常用的对象锁.并发 ...
- 实际体验华为云AI : ModelArts
国庆前看到了博客园官方博客发布的一篇博客: 学AI有奖:博客园&华为云AI有奖训练营开战啦 本着对AI这种火热的话题,以及华为云博客园联名公仔(次要),我决定参与这个活动. 现在华为云开始全面 ...
- 如何正确遍历删除List中的元素(普通for循环、增强for循环、迭代器iterator、removeIf+方法引用)
遍历删除List中符合条件的元素主要有以下几种方法: 普通for循环 增强for循环 foreach 迭代器iterator removeIf 和 方法引用 其中使用普通for循环容易造成遗漏元素的问 ...
- 设置VMWare CentOS7虚拟机上网(配置静态地址)
针对CentOS安装后设置虚拟机上网,参考网上相关资料和实际操作经验总结如下.本人亲测有效,进入主题. 设置虚拟机上网步骤 1.虚拟机设置->网络适配器 2.编辑->虚拟机网络编辑器-&g ...
- 【JZOJ5264】化学
Description Input Output Sample Input 3 10 1 2 10 Sample Output 5 Hint 题解: 这个题目通过30%部分分的提示,我们可以猜出这 ...