C和指针课后练习题4
1、下面表达式是否合法?如果合法,他执行什么任务?
3* x * x - 4 * x + 6;
合法;他只是执行了表达式求值,但是他的结果并不存于任何地方。
2、赋值语句的语法?
数据类型 变量名 = 表达式; // 表达式可以理解为一个值或一个计算公式
如:y=x+1
3、用下面的方法使用代码块是否合法?如果合法,你想怎么用?
.......... statement
{
statement
statement
} statement
合法;如果你需要为所附语句引入临时变量,但希望将对变量的访问限制为仅限于这些语句,那么这将非常有用。
4、当你编写if语句时,如果在then子句中没有语句,但在else字句中有语句,你该如何编写?你还能用其他形式来达到同样效果么?
1 if(表达式)
2 ;
3 else
4 语句;
1 if(表达式)
2 语句;
5、下面循环体将会产生什么样的输出?
1 int i;
2 .....
3 for(i=0;i<10;i++)
4 printf("%d\n",i);
输出结果:0
1
2
3
4
5
6
7
8
9
6、什么时候使用while语句比使用for语句方便?
当循环次数未知的情况下,使用while语句方便
7、下面代码片段用于把标准输入复制到标准输出,并计算字符的检验和(checksum),他有什么错?
1 while ((ch=getchar()!=EOF)
2 checksum +=ch;
3 putchar(ch);
4 printf("Checksum=%d\n",checksum);
程序容易进入死循环。
8、什么时候使用do语句比使用while语句更加合适?
要求循环体至少执行一次的情况下。
9、下面代码将会产生什么结果?
1 #include<stdio.h>
2 int main()
3 {
4 int i;
5 for (i=1;i<4;i++)
6 {
7 switch(i%2){
8 case 0:
9 printf("even\n");
10 case1:
11 printf("odd\n");
12 }
13 }
14 return 0;
15 }
运行结果:even
odd
10、编写一些语句,从标准输入读取一个整型值,然后打印一些空白,空白行的数量由这个值指定。
#include <stdio.h>
int main()
{
int m;
printf("Please enter a number:");
scanf("%d",&m);
for(int i=0;i<m;i++)
{
printf("\n");
}
return 0;
}
11、编写一些语句,用于对一些已经读入的值进行检验和报告。如果x小于y,打印单词WRONG。同样,如果a大于或等于b,也打印WRONG。在其他情况下,打印RIGHT。
1 #include <stdio.h>
2 int main()
3 {
4 int x,y,a,b;
5 printf("输入4个整数:");
6 scanf("%d,%d,%d,%d",&x,&y,&a,&b);
7
8 if ((x<y)||(a>=b))
9 printf("WRONG\n");
10 else
11 printf("RIGHT\n");
12 return 0;
13
14 }
12、能被4整除的年份是闰年,但其中能被100整除的却不是闰年,除非它同时能被400整除。编写语句,判断年份是否为闰年,如果是把变量leap_year设为1,否则为0.
1 #include<stdio.h>
2 int main()
3
4 {
5 int year,leap_year;
6 printf("输入一个年份:");
7 scanf("%d",&year);
8 if(year%4==0)
9 {
10 if(year%100==0&&year%400==0)
11 leap_year=1;
12 else if(year%100==0&&year%400!=0)
13 leap_year=0;
14 }
15 else
16 leap_year=0;
17 printf("leap_year=%d\n",leap_year);
18 return 0;
19 }
13、新闻记者都受过训练,善于提问谁?什么?何时?何地?为什么?清编写一些语句,如果变量which_word的值是1,就打印who;为2,就打印what;依次类推。如果变量的值不在1~5之内就打印don‘t know。
1 #include<stdio.h>
2 int main()
3
4 {
5 int i;
6 printf("Please enter a number(1~5):");
7 scanf("%d",&i);
8 switch(i)
9 {
10 case 1:
11 printf("who\n");
12 break;
13 case 2:
14 printf("what\n");
15 break;
16 case 3:
17 printf("when\n");
18 break;
19 case 4:
20 printf("where\n");
21 break;
22 case 5:
23 printf("why\n");
24 break;
25 default:
26 printf("don't know\n");
27 break;
28 }
29 return 0;
30 }
14、假定一个程序来控制你,而且这个程序包含两个函数:eat_hamberger()用于让你吃汉堡,hunger函数根据你是否饥饿返回真假值。编写一条语句允许你在饥饿感得到满足之前爱吃对少就吃多少汉堡。
while(hungry())
{ eat_humberger();
}
15、修改问题14,让你至少吃一次汉堡。
do
{
eat_humberger();
} while(hungry())
16、编写一些语句,根据变量precipitating和temperture的值打印当前天气的简单总结。
| 如果precitating为 | 而且tempreture是 | 那就打印 |
| true |
<32 >=32 |
snowing raining |
| false |
<60 >=60 |
cold warm |
#include<stdio.h>
int main() {
int pre,tem;
printf("precipiting=");
scanf("%d",&pre);
printf("tempreture=");
scanf("%d",&tem);
if(pre)
{
if(tem<32)
printf("snowing\n");
else
printf("raining\n");
}
else
{
if(tem<60)
printf("cold\n");
else
printf("warm\n");
} return 0;
}
C和指针课后练习题4的更多相关文章
- C和指针课后练习题3
1.在你的机器上,字符的范围有多大?有那些不同的整数类型以及他们的范围? C语言中数据输入输出格式: %d 有符号10进制整数%i 有符号10进制整数%o 无符号8进制整数%u 无符号10进制整数%x ...
- 数据结构课后练习题(练习一)1007 Maximum Subsequence Sum (25 分)
Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to ...
- 《Java JDK7 学习笔记》课后练习题1
1.()组织负责监督审查Java相关技术规格的演进. A. JCP B. Apache C. EU D. W3C 2.Java技术规格必须以()正式文件提交审查. A. RFC B. JSR C. I ...
- 《Java JDK7 学习笔记》课后练习题2
1.如果在hello.java中撰写以下的程序代码: public class Hello { public static dmain(String[]args) { Sys ...
- 《java JDK7 学习笔记》课后练习题3
1.如果有以下的程序代码:int number;System.out.println(number);以下描述何者正确?A.执行时显示0B.执行时显示随机数字C.执行时出现错误D.编译失败 2.如果有 ...
- 小甲鱼第51讲:《__name__="__main__"、搜索路径和包》课后练习题
测试题: 0. __name__属性指的是在调用该模块的时候调用的函数名称,方便在模块的被调用的时候,模块内部被调用的函数不会被运行. 1. 当模块作为主程序运行的时候,__name__属性的值是“_ ...
- C和指针课后问答题答案翻译
第11章 动态内存分配 1.在你的系统中,你能够声明的静态数组最大长度能达到多少?使用动态内存分配,你最大能够获取的内存块有多大? 英文答案原文: This will vary from system ...
- 数据结构课后练习题(练习三)7-5 Tree Traversals Again (25 分)
7-5 Tree Traversals Again (25 分) An inorder binary tree traversal can be implemented in a non-recu ...
- Day01_课后练习题
1.(将摄氏温度转化华氏温度)编写一个从控制台读取摄氏温度并将他转变为华氏温度并予以显示的程序.转换公式如下. Fahrenheit = (9 / 5) * celsius + 32 这里是这个程序 ...
随机推荐
- 【Luogu】P1402 酒店之王 题解
原题链接 这道题,很明显是个配对问题.于是,我们可以想到用网络最大流来做. 先整理一下题目条件. 很明显,根据贪心思想,要使最多人满意,每个人应该最多睡一个房间(似乎也没有人能睡两个房间),吃一道菜. ...
- Docker(7)- docker images 命令详解
如果你还想从头学起 Docker,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1870863.html 作用 列出所有的本地镜像 语法格 ...
- .net 实现签名验签
本人被要求实现.net的签名验签,还是个.net菜鸡,来分享下采坑过程 依然,签名验签使用的证书格式依然是pem,有关使用openssl将.p12和der转pem的命令请转到php实现签名验签 .ne ...
- iptables从入门到掌握
防火墙简述 防火墙(firewall)一词本是建筑用于,本意是为了保护建筑物不受火灾侵害的.被借鉴到了在网络通信领域中,表示保护局域网或主机不受网络攻击的侵害. 防火墙: 工作在主机或者网络边缘,对于 ...
- 【SpringBoot】03.SpringBoot整合Servlet的两种方式
SpringBoot整合Servlet的两种方式: 1. 通过注解扫描完成Servlet组件注册 新建Servlet类继承HttpServlet 重写超类doGet方法 在该类使用注解@WebServ ...
- GAMES101系列笔记一 图形学概述与线性代数入门
概述+线性代数 为什么学习图形学? Computer Graphics is AWESOME! 主要涉及内容: 光栅化 曲线和网格 光线追踪 动画与模拟 Differences between CG ...
- EFCore自己用的点东西
测试一下EF core 的操作 蛀牙总是用导航属性有的时候有点不理解 写个例子给自己用 class Program { static void Main(string[] args) { MyDbCo ...
- TRUNCATE 有约束的表
在有外键约束的情况下,truncate 表时,会报错, 我们可以设置外键检测为flase,执行完truncate命令后,再启用 SET foreign_key_checks = 0;TRUNCATE ...
- CSS九宫格带边框的多种实现
九宫格,每个单元格滑动上去显示完整边框. 本身考察的知识点并不复杂,margin负值的遮挡,以及流布局中relative的超越. 代码固定部分是这样的, <div> <div> ...
- Docker - 解决在容器内删除和主机映射的目录而报错 rm: cannot remove 'webapps': Device or resource busy 的问题
问题背景 docker run -d --name tomcat7 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:7 使用 ...