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的更多相关文章

  1. C和指针课后练习题3

    1.在你的机器上,字符的范围有多大?有那些不同的整数类型以及他们的范围? C语言中数据输入输出格式: %d 有符号10进制整数%i 有符号10进制整数%o 无符号8进制整数%u 无符号10进制整数%x ...

  2. 数据结构课后练习题(练习一)1007 Maximum Subsequence Sum (25 分)

    Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined to ...

  3. 《Java JDK7 学习笔记》课后练习题1

    1.()组织负责监督审查Java相关技术规格的演进. A. JCP B. Apache C. EU D. W3C 2.Java技术规格必须以()正式文件提交审查. A. RFC B. JSR C. I ...

  4. 《Java JDK7 学习笔记》课后练习题2

    1.如果在hello.java中撰写以下的程序代码: public class Hello {     public static dmain(String[]args) {          Sys ...

  5. 《java JDK7 学习笔记》课后练习题3

    1.如果有以下的程序代码:int number;System.out.println(number);以下描述何者正确?A.执行时显示0B.执行时显示随机数字C.执行时出现错误D.编译失败 2.如果有 ...

  6. 小甲鱼第51讲:《__name__="__main__"、搜索路径和包》课后练习题

    测试题: 0. __name__属性指的是在调用该模块的时候调用的函数名称,方便在模块的被调用的时候,模块内部被调用的函数不会被运行. 1. 当模块作为主程序运行的时候,__name__属性的值是“_ ...

  7. C和指针课后问答题答案翻译

    第11章 动态内存分配 1.在你的系统中,你能够声明的静态数组最大长度能达到多少?使用动态内存分配,你最大能够获取的内存块有多大? 英文答案原文: This will vary from system ...

  8. 数据结构课后练习题(练习三)7-5 Tree Traversals Again (25 分)

    7-5 Tree Traversals Again (25 分)   An inorder binary tree traversal can be implemented in a non-recu ...

  9. Day01_课后练习题

    1.(将摄氏温度转化华氏温度)编写一个从控制台读取摄氏温度并将他转变为华氏温度并予以显示的程序.转换公式如下. Fahrenheit = (9 / 5) *  celsius + 32 这里是这个程序 ...

随机推荐

  1. Linux下的django项目01

    1.初始化项目结构 └─shiyanlou_project # 项目根路径 │ .gitignore     # 提交git仓库时,不提交的文件必须要在这里进行标注 │ README.en.md # ...

  2. ERP收付款的操作与设计--开源软件诞生22

    赤龙ERP收款付款讲解--第22篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/redra ...

  3. python面向对象(类与对象)

    面向对象思想 关注公众号"轻松学编程"了解更多. 1.面向对象的设计思想 面向对象是基于万物皆对象这个哲学观点. 2.面向对象和面向过程的区别 面向过程 在生活中: 它是一种看待问 ...

  4. 动态规划之KMP字符匹配算法

    KMP 算法(Knuth-Morris-Pratt 算法)是一个著名的字符串匹配算法,效率很高,但是确实有点复杂. 很多读者抱怨 KMP 算法无法理解,这很正常,想到大学教材上关于 KMP 算法的讲解 ...

  5. day83:luffy:添加购物车&导航栏购物车数字显示&购物车页面展示

    目录 1.添加购物车+验证登录状态 2.右上方购物车图标的小红圆圈数字 3.Vuex 4.购物车页面展示-后端接口 5.购物车页面展示-前端 6.解决一个购物车数量显示混乱的bug 1.添加购物车+验 ...

  6. c#连接mysql答题步骤

    引用mysql数据库 using MySql.Data.MySqlClient; 有一个mysql.dll文件 下面是实例化连接数据库 MySqlConnection Conn = new MySql ...

  7. Linux 基础命令及基本目录

    Linux 基础命令及基本目录 一.网卡 1.网卡配置文件路径 ​ /etc/sysconfig/network-scripts/ifcfg-eth0 配置文件: TYPE=Ethernet # 以太 ...

  8. 21迁移python项目到另一台电脑

    在虚拟环境中将第三方库打包到一个TXT文件:1,在项目保存在项目所在目录,文件可以自定义.pip freeze> requirements.txt命令2,将requirements.txt放入另 ...

  9. mybatis print sql config

    log4j.rootLogger=DEBUG, Console #Console log4j.appender.Console=org.apache.log4j.ConsoleAppender log ...

  10. C++编程基础练习,入门必备练手

    练习1,1 从一个简单程序开始 1,将string头文件注释掉,重新编译这个程序,会发生什么事? 目前还没有发现会发生什么事. 2,将using namespace std注释掉,重新编译,会发生什么 ...