明解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 ...
随机推荐
- .net core 3.0 Signalr - 02 使用强类型的Hub
## 强类型的优缺点 - 优点 强类型的Hub可以避免魔法函数名,相比弱类型更容易维护和发现问题,直接上代码 - 缺点 特么的得多些好几行代码 ## 代码 ### 接口定义 ``` C# /// // ...
- Shell之三剑客
目录 Shell之三剑客 参考 Grep Sed Awk Shell之三剑客
- wordpress访问速度慢
可能是google字体的原因 1.找到wordpress目录下wp-includes/script-loader.php这个文件 2.查找open_sans_font_url这个字段,把后面的font ...
- 详解Java多线程锁之synchronized
synchronized是Java中解决并发问题的一种最常用的方法,也是最简单的一种方法. synchronized的四种使用方式 修饰代码块:被修饰的代码块称为同步语句块,其作用的范围是大括号{}括 ...
- RabbitMQ原理介绍
RabbitMQ历史 RabbitMQ消息系统是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.在同步消息通讯的世界里有很多公开标准(如COBAR的IIO ...
- 利用npm安装/删除/查看包信息
查看远程服务器上的包的版本信息 npm view webpack version //查看npm服务器上包webpack的最新版本 npm view webpack versions //查看服务器上 ...
- python编程基础之十四
列表的增加元素 l1 = [10, 20, 30] l1.append(40) # 末尾追加一个值为40的元素 l1.extend([50, 60]) # 末尾追加一系列元素,extend + 可 ...
- Kubernetes中的PV和PVC是啥
K8S引入了一组叫作Persistent Volume Claim(PVC)和Persistent Volume(PV)的API对象,大大降低了用户声明和使用持久化Volume的门槛. 在Pod的Vo ...
- 使用Xming显示Oracle Linux图形界面
如果你在尝试各种官方说明文档中的方法之后,xclock仍然无法远程显示. 系统 Win10 - Oracle Linux 7.5 Xming的文档以及网上教程都说的是Xming相关的配置 但是,要显示 ...
- SQL注入靶场sqli-labs 1-65关全部通关教程
以前说好复习一遍 结果复习到10关就没继续了 真是废物 一点简单的事做不好 继续把以前有头没尾的事做完 以下为Sqli-lab的靶场全部通关答案 目录: less1-less10 less10-les ...